Sha256: 5ac160e0bfeed163070ec76ff0bbd911a637969572e7d9bcc95df77dd5135938

Contents?: true

Size: 1.15 KB

Versions: 135

Compression:

Stored size: 1.15 KB

Contents

package com.xruby.runtime.builtin;

import java.util.Map;

import com.xruby.runtime.lang.RubyConstant;
import com.xruby.runtime.lang.RubyValue;
import com.xruby.runtime.lang.annotation.RubyLevelMethod;
import com.xruby.runtime.lang.annotation.RubyLevelObject;

@RubyLevelObject(name="ENV", objectClass="Object")
public class RubyENV {
	@RubyLevelMethod(name="__get_os_ev__", singleton=true)
	public static RubyValue getOSEv(RubyValue receiver, RubyValue arg) {
        RubyString s = arg.toRubyString();
        String v = System.getenv(s.toString());
        return (null == v) ? RubyConstant.QNIL : ObjectFactory.createString(v);
    }
	
	@RubyLevelMethod(name="__os_ev_index__", singleton=true)
	public static RubyValue osEvIndex(RubyValue receiver, RubyValue arg) {
        String s = RubyTypesUtil.convertToJavaString(arg);
        Map<String, String> map = System.getenv();

        if (map.containsValue(s)) {
            for (String k : map.keySet()) {
                String v = map.get(k);
                if (s.equals(v)) {
                    return ObjectFactory.createString(k);
                }
            }
        }

        return RubyConstant.QNIL;
    }
}

Version data entries

135 entries across 135 versions & 2 rubygems

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