Sha256: 25679f65fd6c94628b014a0508bab256fd4538c6f1a66f36218e053a623da153

Contents?: true

Size: 1009 Bytes

Versions: 117

Compression:

Stored size: 1009 Bytes

Contents

/**
 * Copyright 2005-2007 Xue Yong Zhi
 * Distributed under the BSD License
 */

package com.xruby.runtime.lang;

public abstract class MethodBlockBase {
    protected int argc_;
    protected boolean has_asterisk_parameter_;
    protected int default_argc_;
    protected RubyValue[] default_values_ = null;
    private RubyModule scopeOfCurrentMethod_;

    protected MethodBlockBase(int argc, boolean has_asterisk_parameter, int default_argc) {
        argc_ = argc;
        has_asterisk_parameter_ = has_asterisk_parameter;
        default_argc_ = default_argc;
    }

    public int arity() {
        if (has_asterisk_parameter_ || default_argc_ > 0) {
            return -(argc_ - default_argc_) - 1;
        } else {
            return argc_;
        }
    }

    public RubyModule getScope() {
        return scopeOfCurrentMethod_;
    }

    public void setScope(RubyModule m) {
        scopeOfCurrentMethod_ = m;
    }

    abstract public RubyID getID();
}

Version data entries

117 entries across 117 versions & 1 rubygems

Version Path
rhodes-3.3.5 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.4.2 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.4 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.3 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.3.beta.4 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.3.beta.3 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.3.beta.2 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.3.beta.1 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.7 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.6 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.5 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.4 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.3 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.2 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.2.beta.1 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.1 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.0 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.0.beta.3 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java
rhodes-3.3.0.beta.2 platform/shared/xruby/src/com/xruby/runtime/lang/MethodBlockBase.java