| Modifier and Type | Interface and Description |
|---|---|
| public interface | DepthCloneable
For Operands which can be accessed from nested scopes we sometimes need to adjust them for different depths. |
| public interface | Stringable
Represents an Operand that has a Java string form. |
| public interface |
| Modifier and Type | Class and Description |
|---|---|
| public class | |
| public class | Bignum
Represents a literal Bignum. |
| public class | |
| public class | BuiltinClass
Reference to common builtin types we care about: Object, Array, Hash. |
| public class | |
| public class | ClosureLocalVariable
This represents a non-temporary variable used in a closure and defined in this or a parent closure. |
| public class | Complex
Represents a Complex literal. |
| public class | |
| public class | |
| public class | Filename
Represents the script's __FILE__. |
| public class | |
| public class | |
| public class | FrozenString
Represents a frozen string value. |
| public class | |
| public class | |
| public abstract class | ImmutableLiteral<
type of immutable literal T>Operands extending this type can make a reasonable assumption of immutability. |
| public class | |
| public class | |
| public class | |
| public class | |
| public class | MutableString
Represents a literal string value. |
| public class | Nil
Represents nil. |
| public class | |
| public class | NullBlock
Represents Block.NULL block, the block that cannot be yielded. |
| public abstract class | |
| public class | Range
Literal Range with literal endpoints. |
| public class | Rational
Literal Rational number. |
| public abstract class | |
| public class | Regexp
Represents a literal regexp from ruby, constructed on first traversal and then cached. |
| public class | Scope
Reference a StaticScope/IRScope. |
| public class | ScopeModule
Wrap a scope for the purpose of finding live module which happens to be associated with it. |
| public class | |
| public class | |
| public class | |
| public class | |
| public class | |
| public class | SymbolProc
A literal representing proc'ified symbols, as in &:foo. |
| public class | TemporaryBooleanVariable
Represents a temporary variable for an unboxed Boolean operand. |
| public class | |
| public class | |
| public class | TemporaryFixnumVariable
Represents a temporary variable for an unboxed Fixnum operand. |
| public class | TemporaryFloatVariable
Represents a temporary variable for an unboxed Float operand. |
| public class | TemporaryIntVariable
Represents a temporary variable for an unboxed int operand. |
| public class | TemporaryLocalReplacementVariable
When we optimize full local variables to be temporary ones we like to keep the name of what we renamed them as. |
| public class | TemporaryLocalVariable
A set of variables which are only used in a particular scope and never visible to Ruby itself. |
| public abstract class | |
| public class | |
| public class | |
| public class | |
| public class | UndefinedValue
For argument processing. |
| public class | |
| public abstract class | |
| public class |
| Modifier and Type | Enum and Description |
|---|---|
| public enum | |
| public enum | TemporaryVariableType
This enum exists because we will frequently run into an arbitrary temporary variable and we want to be able to quickly switch on type. |