Top Interfaces Classes Enums
[default module]

Package org.jruby.ir.operands


Interface Summary

Modifier and TypeInterface 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

Class Summary

Modifier and TypeClass 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

Enum Summary

Modifier and TypeEnum 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.