Sha256: b46db78e42e8348abc20c1cd3d57b942c77d1cbe37c26f09831bb8e54918fd5b

Contents?: true

Size: 1.32 KB

Versions: 135

Compression:

Stored size: 1.32 KB

Contents

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

package com.xruby.runtime.stdlib;

import com.xruby.runtime.builtin.ObjectFactory;
import com.xruby.runtime.builtin.RubyString;
import com.xruby.runtime.lang.*;
import com.xruby.runtime.lang.annotation.RubyAllocMethod;
import com.xruby.runtime.lang.annotation.RubyLevelClass;
import com.xruby.runtime.lang.annotation.RubyLevelMethod;

@RubyLevelClass(name="StringIO", modules="Enumerable")
public class RubyStringIO extends RubyBasic {
    private RubyString value_;

    private RubyStringIO() {
        super(RubyRuntime.StringIOClass);
    }

    @RubyAllocMethod
    public static RubyStringIO alloc(RubyValue receiver) {
        return new RubyStringIO();
    }

    @RubyLevelMethod(name="initialize")
    public RubyStringIO initialize() {
        this.value_ = ObjectFactory.createString();
        return this;
    }
    
    @RubyLevelMethod(name="initialize")
    public RubyStringIO initialize(RubyValue arg) {
        this.value_ = arg.toRubyString().clone();
        return this;
    }

    @RubyLevelMethod(name="string")
    public RubyString string() {
        return value_;
    }

    @RubyLevelMethod(name="puts")
    public RubyString puts(RubyValue arg) {
        return value_.appendString(arg);
    }
}

Version data entries

135 entries across 135 versions & 2 rubygems

Version Path
rhodes-7.6.0 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-7.5.1 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-7.4.1 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-7.1.17 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-6.2.0 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-6.0.11 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.18 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.17 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.15 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.0.22 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.2 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.0.7 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.0.3 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-5.5.0 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
tauplatform-1.0.3 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
tauplatform-1.0.2 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
tauplatform-1.0.1 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-3.5.1.12 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-3.3.5 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java
rhodes-3.4.2 platform/shared/xruby/src/com/xruby/runtime/stdlib/RubyStringIO.java