Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  */
 
 package org.jruby.ir.operands;
 

Author(s):
enebo
public class LocalVariable extends Variable {
    protected String name;
    protected int scopeDepth;
    protected int offset;
    // FIXME: We should resolve to an index into an array but localvariable has no allocator
    public LocalVariable(String nameint scopeDepthint location) {
        this. = name;
        this. = scopeDepth;
        this. = location;
    }
    public int getScopeDepth() {
        return ;
    }
    public int getLocation() {
        return ;
    }
    @Override
    public String getName() {
        return ;
    }
    @Override
    public String toString() {
        return isSelf() ?  :  + "(" +  + ":" +  + ")";
    }
    @Override
    public int hashCode() {
        return .hashCode();
    }
    @Override
    public boolean equals(Object obj) {
        if (obj == null || !(obj instanceof LocalVariable)) return false;
        return .equals(((LocalVariableobj).);
    }
    public int compareTo(Object arg0) {
        // ENEBO: what should compareTo when it is not comparable?
        if (!(arg0 instanceof LocalVariable)) return 0;
        return .compareTo(((LocalVariablearg0).);
    }
    public boolean isSelf() {
        return false;
    }
    @Override
    public Object retrieve(ThreadContext contextIRubyObject selfDynamicScope currDynScopeObject[] temp) {
        IRubyObject value = currDynScope.getValue();
        if (value == nullvalue = context.nil;
        return value;
    }
    @Override
        return new LocalVariable();
    }
    // SSS FIXME: Better name than this?
    public LocalVariable cloneForDepth(int n) {
        return new LocalVariable(n);
    }
    @Override
    public void visit(IRVisitor visitor) {
        visitor.LocalVariable(this);
    }
New to GrepCode? Check out our FAQ X