Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package org.dynjs.runtime;
 
 
 public class ObjectEnvironmentRecord implements EnvironmentRecord {
 
     private JSObject object;
     private boolean provideThis;
 
    public ObjectEnvironmentRecord(JSObject objectboolean provideThis) {
        this. = object;
        this. = provideThis;
    }
    public JSObject getBindingObject() {
        return this.;
    }
    public String toString() {
        return "[ObjectEnvironmentRecord: object=" + this. + "]";
    }
    @Override
    public boolean hasBinding(ExecutionContext contextString name) {
        // 10.2.1.2.1
        return this..hasProperty(contextname);
    }
    @Override
    public void createMutableBinding(ExecutionContext contextfinal String namefinal boolean configValue) {
        // 10.2.1.2.2
        PropertyDescriptor desc = new PropertyDescriptor() {
            {
                set("Value".);
                set("Writable"true);
                set("Enumerable"true);
                set("Configurable"configValue);
            }
        };
        this..defineOwnProperty(contextnamedesctrue);
    }
    @Override
    public void setMutableBinding(ExecutionContext contextString nameObject valueboolean strict) {
        // 10.2.1.2.3
        this..put(contextnamevaluestrict);
    }
    @Override
    public Object getBindingValue(ExecutionContext contextString nameboolean strict) {
        // 10.2.1.2.4
        Object d = this..getProperty(contextname);
        if (d == .) {
            if (strict) {
                throw new ThrowException(contextcontext.createReferenceError(name + " is not defined"));
            }
            return .;
        }
        PropertyDescriptor desc = (PropertyDescriptord;
        return desc.getValue();
    }
    @Override
    public boolean deleteBinding(ExecutionContext contextString name) {
        // 10.2.1.2.4
        return this..delete(contextnamefalse);
    }
    @Override
    public Object implicitThisValue() {
        // 10.2.1.2.6
        if () {
            return this.;
        }
        return .;
    }
    public boolean isGlobal() {
        return (this. instanceof GlobalObject);
    }
New to GrepCode? Check out our FAQ X