Package org.jruby.ext.pathname
Class RubyPathname
java.lang.Object
org.jruby.RubyBasicObject
org.jruby.RubyObject
org.jruby.ext.pathname.RubyPathname
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<IRubyObject>,InstanceVariables,InternalVariables,IRubyObject,CoreObjectType
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static interfacestatic class(package private) static interfaceNested classes/interfaces inherited from class org.jruby.RubyObject
RubyObject.DataNested classes/interfaces inherited from class org.jruby.RubyBasicObject
RubyBasicObject.Finalizer -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final RubyPathname.AddArgprivate static final RubyPathname.ReturnValueMapperprivate static final RubyPathname.ReturnValueMapperprivate static final RubyPathname.ReturnValueMapperprivate static final RubyPathname.AddArgFields inherited from class org.jruby.RubyObject
IVAR_INSPECTING_OBJECT_ALLOCATOR, OBJECT_ALLOCATOR, REIFYING_OBJECT_ALLOCATORFields inherited from class org.jruby.RubyBasicObject
ALL_F, BASICOBJECT_ALLOCATOR, COMPARE_BY_IDENTITY_F, ERR_INSECURE_SET_INST_VAR, FALSE_F, FL_USHIFT, flags, FROZEN_F, IS_OVERLAID_F, metaClass, NEVER, NIL_F, REFINED_MODULE_F, STAMP_OFFSET, TAINTED_F, UNDEF, UNTRUST_F, USER0_F, USER1_F, USER2_F, USER3_F, USER4_F, USER5_F, USER6_F, USER7_F, USER8_F, USER9_F, USERA_F, VAR_TABLE_OFFSET, varTable, varTableStampFields inherited from interface org.jruby.runtime.builtin.IRubyObject
NULL_ARRAY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate intcmp(RubyPathname other) (package private) static voidcreatePathnameClass(Ruby runtime) private static voiddefineDelegateMethods(RubyClass cPathname, RubyModule klass, String... methods) private static voiddefineDelegateMethodsAppendPath(RubyClass cPathname, RubyModule klass, String... methods) private static voiddefineDelegateMethodsArrayOfPaths(RubyClass cPathname, RubyModule klass, String... methods) private static voiddefineDelegateMethodsGeneric(RubyClass cPathname, RubyModule klass, RubyPathname.ReturnValueMapper mapper, RubyPathname.AddArg addArg, String... methods) private static voiddefineDelegateMethodsSinglePath(RubyClass cPathname, RubyModule klass, String... methods) each_entry(ThreadContext context, Block block) each_line(ThreadContext context, IRubyObject[] args, Block block) empty_p(ThreadContext context) fnmatch(ThreadContext context, IRubyObject[] args) freeze(ThreadContext context) rb_obj_freeze call-seq: obj.freeze => obj Prevents further modifications to obj.private RubyStringgetPath()static IRubyObjectgetwd(ThreadContext context, IRubyObject recv) glob(ThreadContext context, IRubyObject[] _args, Block block) static IRubyObjectglob(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block) hash(ThreadContext context) inthashCode()This override does not do "checked" dispatch since Object usually has #hash defined.initialize(ThreadContext context, IRubyObject path) initialize_copy(ThreadContext context, IRubyObject pathname) private static IRubyObject[]insert(IRubyObject[] old, int i, IRubyObject obj) private IRubyObject[]insertPath(IRubyObject[] args, int i) inspect(ThreadContext context) make_link(ThreadContext context, IRubyObject old) make_symlink(ThreadContext context, IRubyObject old) private static RubyArraymapToPathnames(ThreadContext context, RubyClass clazz, IRubyObject ary) static RubyPathnamenewInstance(ThreadContext context, RubyClass klass, IRubyObject path) static RubyPathnamenewInstance(ThreadContext context, IRubyObject path) op_cmp(ThreadContext context, IRubyObject other) op_equal(ThreadContext context, IRubyObject other) rb_obj_equal Will by default use identity equality to compare objects.opendir(ThreadContext context, Block block) private voidsetPath(RubyString path) private static JavaSites.PathnameSitessites(ThreadContext context) sub(ThreadContext context, IRubyObject[] args, Block block) sub_ext(ThreadContext context, IRubyObject newExt) taint(ThreadContext context) rb_obj_taint call-seq: obj.taint -> obj Marks obj as tainted---if the$SAFElevel is set appropriately, many method calls which might alter the running programs environment will refuse to accept tainted strings.to_path(ThreadContext context) to_s(ThreadContext context) unlink(ThreadContext context) private IRubyObject[]unshiftPath(IRubyObject[] args) untaint(ThreadContext context) rb_obj_untaint call-seq: obj.untaint => obj Removes the taint from obj.Methods inherited from class org.jruby.RubyObject
attachToObjectSpace, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, callInit, convertToType, createObjectClass, dig, dig1, dig2, eqlInternal, equalInternal, equals, getNativeClassIndex, inspect, op_eqq, puts, specificEval, toRubyString, toStringMethods inherited from class org.jruby.RubyBasicObject
addFinalizer, anyToString, asJavaString, asString, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callMethod, callSuper, checkArrayType, checkCallMethod, checkCallMethod, checkFrozen, checkStringType, checkStringType19, compareTo, convertToArray, convertToFloat, convertToHash, convertToInteger, convertToInteger, convertToInteger, convertToString, copyInstanceVariablesInto, copySpecialInstanceVariables, createBasicObjectClass, dataGetStruct, dataGetStructChecked, dataWrapStruct, decode, display, dup, ensureInstanceVariablesSettable, eql, eql_p, equal_p, equal_p19, evalUnder, extend, fastGetInstanceVariable, fastGetInternalVariable, fastHasInstanceVariable, fastHasInternalVariable, fastSetInstanceVariable, fastSetInternalVariable, frozen_p, getFFIHandle, getFlag, getInstanceEvalClass, getInstanceVariable, getInstanceVariableList, getInstanceVariableNameList, getInstanceVariables, getInternalVariable, getInternalVariables, getJavaClass, getMetaClass, getMetaClass, getNativeHandle, getNativeTypeIndex, getObjectId, getRuntime, getSingletonClass, getSingletonClassClone, getSingletonClassCloneAndAttach, getType, getVariable, getVariableCount, getVariableList, getVariableNameList, hash, hashyInspect, hasInstanceVariable, hasInstanceVariables, hasInternalVariable, hasVariables, id, infectBy, initialize, initialize_copy, initialize19, inspect, inspectHashCode, instance_eval, instance_eval, instance_eval, instance_eval, instance_eval19, instance_eval19, instance_eval19, instance_eval19, instance_exec, instance_exec19, instance_of_p, instance_variable_defined_p, instance_variable_get, instance_variable_set, instance_variables, instance_variables19, isBuiltin, isClass, isFalse, isFrozen, isImmediate, isModule, isNil, isSpecialConst, isSpecialObject, isTaint, isTrue, isUntrusted, kind_of_p, makeMetaClass, method, method_missing, method_missing19, method19, methods, methods, methods19, nil_p, nonFixnumHashCode, OBJ_INIT_COPY, objInitCopy, op_equal_19, op_match, op_match19, op_not, op_not_equal, op_not_match, private_methods, private_methods19, protected_methods, protected_methods19, public_methods, public_methods19, rbClone, rbClone, rbInspect, remove_instance_variable, removeFinalizers, removeInstanceVariable, removeInternalVariable, respond_to_p, respond_to_p, respond_to_p19, respond_to_p19, respondsTo, respondsToMissing, respondsToMissing, send, send, send, send, send, send19, send19, send19, send19, setFFIHandle, setFlag, setFrozen, setInstanceVariable, setInternalVariable, setMetaClass, setNativeHandle, setTaint, setUntrusted, setVariable, singleton_method, singleton_method_added, singleton_method_added19, singleton_method_removed, singleton_method_removed19, singleton_method_undefined, singleton_method_undefined19, singleton_methods, specificEval, specificEval, specificEval, specificEval, syncVariables, syncVariables, taint, tainted_p, testFrozen, testFrozen, to_a, to_a, to_s, toJava, trust, type, type_deprecated, untrust, untrusted_p, validateInstanceVariable, validateInstanceVariable, validateInstanceVariable, variableTableContains, variableTableFastContains, variableTableFastFetch, variableTableFastStore, variableTableFetch, variableTableRemove, variableTableStore, variableTableSync, yieldUnder, yieldUnder
-
Field Details
-
IDENTITY_MAPPER
-
SINGLE_PATH_MAPPER
-
ARRAY_OF_PATHS_MAPPER
-
UNSHIFT_PATH
-
APPEND_PATH
-
-
Constructor Details
-
RubyPathname
-
-
Method Details
-
getPath
-
setPath
-
createPathnameClass
-
defineDelegateMethodsGeneric
private static void defineDelegateMethodsGeneric(RubyClass cPathname, RubyModule klass, RubyPathname.ReturnValueMapper mapper, RubyPathname.AddArg addArg, String... methods) -
defineDelegateMethods
-
defineDelegateMethodsAppendPath
private static void defineDelegateMethodsAppendPath(RubyClass cPathname, RubyModule klass, String... methods) -
defineDelegateMethodsSinglePath
private static void defineDelegateMethodsSinglePath(RubyClass cPathname, RubyModule klass, String... methods) -
defineDelegateMethodsArrayOfPaths
private static void defineDelegateMethodsArrayOfPaths(RubyClass cPathname, RubyModule klass, String... methods) -
newInstance
-
newInstance
-
initialize
-
initialize_copy
-
to_path
-
freeze
Description copied from class:RubyBasicObjectrb_obj_freeze call-seq: obj.freeze => obj Prevents further modifications to obj. ATypeErrorwill be raised if modification is attempted. There is no way to unfreeze a frozen object. See alsoObject#frozen?. a = [ "a", "b", "c" ] a.freeze a << "z" produces: prog.rb:3:in `<<': can't modify frozen array (TypeError) from prog.rb:3- Overrides:
freezein classRubyBasicObject
-
taint
Description copied from class:RubyBasicObjectrb_obj_taint call-seq: obj.taint -> obj Marks obj as tainted---if the$SAFElevel is set appropriately, many method calls which might alter the running programs environment will refuse to accept tainted strings.- Overrides:
taintin classRubyBasicObject
-
untaint
Description copied from class:RubyBasicObjectrb_obj_untaint call-seq: obj.untaint => obj Removes the taint from obj. Only callable in if more secure than 3.- Overrides:
untaintin classRubyBasicObject
-
op_equal
Description copied from class:RubyBasicObjectrb_obj_equal Will by default use identity equality to compare objects. This follows the Ruby semantics. The name of this method doesn't follow the convention because hierarchy problems- Specified by:
op_equalin interfaceIRubyObject- Overrides:
op_equalin classRubyBasicObject
-
cmp
-
op_cmp
- Overrides:
op_cmpin classRubyBasicObject
-
hash
-
hashCode
public int hashCode()Description copied from class:RubyObjectThis override does not do "checked" dispatch since Object usually has #hash defined.- Overrides:
hashCodein classRubyObject- See Also:
-
to_s
-
inspect
-
sub
-
sub_ext
-
fnmatch
-
make_link
-
make_symlink
-
each_line
-
getwd
-
glob
public static IRubyObject glob(ThreadContext context, IRubyObject recv, IRubyObject[] args, Block block) -
glob
-
opendir
-
each_entry
-
unlink
-
empty_p
-
insertPath
-
unshiftPath
-
insert
-
mapToPathnames
-
sites
-