Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package org.dynjs.runtime.builtins.types;
 
public class BuiltinError extends AbstractBuiltinType {
    public BuiltinError(final GlobalContext globalContext) {
        super(globalContext"message");
        final JSObject proto = new DynObject(globalContext);
        proto.setClassName("Error");
        setPrototypeProperty(proto);
    }
    @Override
    public void initialize(GlobalContext globalContextJSObject proto) {
        defineNonEnumerableProperty(proto"constructor"this);
        defineNonEnumerableProperty(proto"name""Error");
        defineNonEnumerableProperty(proto"message""");
        defineNonEnumerableProperty(proto"toString"new ToString(globalContext));
    }
    @Override
    public Object call(final ExecutionContext contextObject selffinal Object... args) {
        JSObject o = null;
        if (self == .) {
            String errorType = (String) ((JSObjectget(context"prototype")).get(context"name");
            o = context.createError(errorTypeargs[0] == . ? null : Types.toStringcontextargs[0]) );
        } else {
            o = (JSObjectself;
        }
        if (args[0] != .) {
            PropertyDescriptor messageDesc = new PropertyDescriptor();
            messageDesc.setValue(Types.toStringcontextargs[0]));
            o.defineOwnProperty(context"message"messageDescfalse);
        }
        PropertyDescriptor stackDesc = new PropertyDescriptor();
        stackDesc.setGetter(new StackGetter(context));
        o.defineOwnProperty(context"stack"stackDescfalse);
        return o;
    }
    @Override
    public JSObject createNewObject(ExecutionContext context) {
        DynObject o = new DynObject(context.getGlobalContext());
        o.setClassName("Error");
        return o;
    }
    
    @Override
    public void setFileName() {
        this. = "org/dynjs/runtime/builtins/types/BuiltinError.java";
    }
    @Override
    public void setupDebugContext() {
        this. = "<native function: Error>";
    }
New to GrepCode? Check out our FAQ X