X7ROOT File Manager
Current Path:
/opt/alt/ruby20/lib64/ruby/2.0.0
opt
/
alt
/
ruby20
/
lib64
/
ruby
/
2.0.0
/
ðŸ“
..
📄
English.rb
(6.44 KB)
📄
abbrev.rb
(3.31 KB)
📄
base64.rb
(2.63 KB)
📄
benchmark.rb
(17.94 KB)
ðŸ“
cgi
📄
cgi.rb
(9.39 KB)
📄
cmath.rb
(7.22 KB)
📄
complex.rb
(380 B)
📄
csv.rb
(81.32 KB)
ðŸ“
date
📄
date.rb
(946 B)
📄
debug.rb
(28.9 KB)
📄
delegate.rb
(9.78 KB)
ðŸ“
digest
📄
digest.rb
(2.24 KB)
ðŸ“
dl
📄
dl.rb
(280 B)
ðŸ“
drb
📄
drb.rb
(19 B)
📄
e2mmap.rb
(3.8 KB)
📄
erb.rb
(26.08 KB)
📄
expect.rb
(2.14 KB)
ðŸ“
fiddle
📄
fiddle.rb
(1.25 KB)
📄
fileutils.rb
(46.35 KB)
📄
find.rb
(2.08 KB)
📄
forwardable.rb
(7.56 KB)
📄
getoptlong.rb
(15.38 KB)
📄
gserver.rb
(8.86 KB)
📄
ipaddr.rb
(26.17 KB)
ðŸ“
irb
📄
irb.rb
(20.03 KB)
ðŸ“
json
📄
json.rb
(1.74 KB)
📄
kconv.rb
(5.74 KB)
📄
logger.rb
(20.96 KB)
📄
mathn.rb
(6.52 KB)
ðŸ“
matrix
📄
matrix.rb
(45.02 KB)
📄
mkmf.rb
(78.19 KB)
📄
monitor.rb
(6.93 KB)
📄
mutex_m.rb
(2 KB)
ðŸ“
net
📄
observer.rb
(5.71 KB)
📄
open-uri.rb
(23.66 KB)
📄
open3.rb
(21.17 KB)
ðŸ“
openssl
📄
openssl.rb
(528 B)
ðŸ“
optparse
📄
optparse.rb
(51.27 KB)
📄
ostruct.rb
(7.64 KB)
📄
pathname.rb
(15.3 KB)
📄
pp.rb
(13.14 KB)
📄
prettyprint.rb
(9.63 KB)
📄
prime.rb
(13.98 KB)
📄
profile.rb
(205 B)
📄
profiler.rb
(4.29 KB)
📄
pstore.rb
(14.85 KB)
ðŸ“
psych
📄
psych.rb
(9.9 KB)
ðŸ“
racc
ðŸ“
rake
📄
rake.rb
(2.07 KB)
📄
rational.rb
(308 B)
ðŸ“
rbconfig
ðŸ“
rdoc
📄
rdoc.rb
(4.88 KB)
📄
resolv-replace.rb
(1.73 KB)
📄
resolv.rb
(61.45 KB)
ðŸ“
rexml
ðŸ“
rinda
ðŸ“
ripper
📄
ripper.rb
(2.53 KB)
ðŸ“
rss
📄
rss.rb
(2.84 KB)
ðŸ“
rubygems
📄
rubygems.rb
(27.53 KB)
📄
scanf.rb
(23.52 KB)
📄
securerandom.rb
(8.56 KB)
📄
set.rb
(17.32 KB)
ðŸ“
shell
📄
shell.rb
(10.3 KB)
📄
shellwords.rb
(5.94 KB)
📄
singleton.rb
(4.02 KB)
📄
socket.rb
(25.76 KB)
📄
sync.rb
(7.26 KB)
ðŸ“
syslog
📄
tempfile.rb
(10.15 KB)
ðŸ“
test
📄
thread.rb
(6.94 KB)
📄
thwait.rb
(3.38 KB)
📄
time.rb
(21.09 KB)
📄
timeout.rb
(3.16 KB)
📄
tmpdir.rb
(4.15 KB)
📄
tracer.rb
(6.54 KB)
📄
tsort.rb
(6.79 KB)
📄
ubygems.rb
(268 B)
📄
un.rb
(8.34 KB)
ðŸ“
uri
📄
uri.rb
(3.07 KB)
📄
weakref.rb
(3.23 KB)
ðŸ“
webrick
📄
webrick.rb
(6.7 KB)
ðŸ“
x86_64-linux
ðŸ“
xmlrpc
📄
xmlrpc.rb
(8.49 KB)
ðŸ“
yaml
📄
yaml.rb
(2.3 KB)
Editing: psych.rb
require 'psych.so' require 'psych/nodes' require 'psych/streaming' require 'psych/visitors' require 'psych/handler' require 'psych/tree_builder' require 'psych/parser' require 'psych/omap' require 'psych/set' require 'psych/coder' require 'psych/core_ext' require 'psych/deprecated' require 'psych/stream' require 'psych/json/tree_builder' require 'psych/json/stream' require 'psych/handlers/document_stream' ### # = Overview # # Psych is a YAML parser and emitter. # Psych leverages libyaml [Home page: http://pyyaml.org/wiki/LibYAML] # or [Git repo: https://github.com/zerotao/libyaml] for its YAML parsing # and emitting capabilities. In addition to wrapping libyaml, Psych also # knows how to serialize and de-serialize most Ruby objects to and from # the YAML format. # # = I NEED TO PARSE OR EMIT YAML RIGHT NOW! # # # Parse some YAML # Psych.load("--- foo") # => "foo" # # # Emit some YAML # Psych.dump("foo") # => "--- foo\n...\n" # { :a => 'b'}.to_yaml # => "---\n:a: b\n" # # Got more time on your hands? Keep on reading! # # == YAML Parsing # # Psych provides a range of interfaces for parsing a YAML document ranging from # low level to high level, depending on your parsing needs. At the lowest # level, is an event based parser. Mid level is access to the raw YAML AST, # and at the highest level is the ability to unmarshal YAML to ruby objects. # # === Low level parsing # # The lowest level parser should be used when the YAML input is already known, # and the developer does not want to pay the price of building an AST or # automatic detection and conversion to ruby objects. See Psych::Parser for # more information on using the event based parser. # # === Mid level parsing # # Psych provides access to an AST produced from parsing a YAML document. This # tree is built using the Psych::Parser and Psych::TreeBuilder. The AST can # be examined and manipulated freely. Please see Psych::parse_stream, # Psych::Nodes, and Psych::Nodes::Node for more information on dealing with # YAML syntax trees. # # === High level parsing # # The high level YAML parser provided by Psych simply takes YAML as input and # returns a Ruby data structure. For information on using the high level parser # see Psych.load # # == YAML Emitting # # Psych provides a range of interfaces ranging from low to high level for # producing YAML documents. Very similar to the YAML parsing interfaces, Psych # provides at the lowest level, an event based system, mid-level is building # a YAML AST, and the highest level is converting a Ruby object straight to # a YAML document. # # === Low level emitting # # The lowest level emitter is an event based system. Events are sent to a # Psych::Emitter object. That object knows how to convert the events to a YAML # document. This interface should be used when document format is known in # advance or speed is a concern. See Psych::Emitter for more information. # # === Mid level emitting # # At the mid level is building an AST. This AST is exactly the same as the AST # used when parsing a YAML document. Users can build an AST by hand and the # AST knows how to emit itself as a YAML document. See Psych::Nodes, # Psych::Nodes::Node, and Psych::TreeBuilder for more information on building # a YAML AST. # # === High level emitting # # The high level emitter has the easiest interface. Psych simply takes a Ruby # data structure and converts it to a YAML document. See Psych.dump for more # information on dumping a Ruby data structure. module Psych # The version is Psych you're using VERSION = '2.0.0' # The version of libyaml Psych is using LIBYAML_VERSION = Psych.libyaml_version.join '.' class Exception < RuntimeError end class BadAlias < Exception end ### # Load +yaml+ in to a Ruby data structure. If multiple documents are # provided, the object contained in the first document will be returned. # +filename+ will be used in the exception message if any exception is raised # while parsing. # # Raises a Psych::SyntaxError when a YAML syntax error is detected. # # Example: # # Psych.load("--- a") # => 'a' # Psych.load("---\n - a\n - b") # => ['a', 'b'] # # begin # Psych.load("--- `", "file.txt") # rescue Psych::SyntaxError => ex # ex.file # => 'file.txt' # ex.message # => "(file.txt): found character that cannot start any token" # end def self.load yaml, filename = nil result = parse(yaml, filename) result ? result.to_ruby : result end ### # Parse a YAML string in +yaml+. Returns the first object of a YAML AST. # +filename+ is used in the exception message if a Psych::SyntaxError is # raised. # # Raises a Psych::SyntaxError when a YAML syntax error is detected. # # Example: # # Psych.parse("---\n - a\n - b") # => #<Psych::Nodes::Sequence:0x00> # # begin # Psych.parse("--- `", "file.txt") # rescue Psych::SyntaxError => ex # ex.file # => 'file.txt' # ex.message # => "(file.txt): found character that cannot start any token" # end # # See Psych::Nodes for more information about YAML AST. def self.parse yaml, filename = nil parse_stream(yaml, filename) do |node| return node end false end ### # Parse a file at +filename+. Returns the YAML AST. # # Raises a Psych::SyntaxError when a YAML syntax error is detected. def self.parse_file filename File.open filename, 'r:bom|utf-8' do |f| parse f, filename end end ### # Returns a default parser def self.parser Psych::Parser.new(TreeBuilder.new) end ### # Parse a YAML string in +yaml+. Returns the full AST for the YAML document. # This method can handle multiple YAML documents contained in +yaml+. # +filename+ is used in the exception message if a Psych::SyntaxError is # raised. # # If a block is given, a Psych::Nodes::Document node will be yielded to the # block as it's being parsed. # # Raises a Psych::SyntaxError when a YAML syntax error is detected. # # Example: # # Psych.parse_stream("---\n - a\n - b") # => #<Psych::Nodes::Stream:0x00> # # Psych.parse_stream("--- a\n--- b") do |node| # node # => #<Psych::Nodes::Document:0x00> # end # # begin # Psych.parse_stream("--- `", "file.txt") # rescue Psych::SyntaxError => ex # ex.file # => 'file.txt' # ex.message # => "(file.txt): found character that cannot start any token" # end # # See Psych::Nodes for more information about YAML AST. def self.parse_stream yaml, filename = nil, &block if block_given? parser = Psych::Parser.new(Handlers::DocumentStream.new(&block)) parser.parse yaml, filename else parser = self.parser parser.parse yaml, filename parser.handler.root end end ### # call-seq: # Psych.dump(o) -> string of yaml # Psych.dump(o, options) -> string of yaml # Psych.dump(o, io) -> io object passed in # Psych.dump(o, io, options) -> io object passed in # # Dump Ruby object +o+ to a YAML string. Optional +options+ may be passed in # to control the output format. If an IO object is passed in, the YAML will # be dumped to that IO object. # # Example: # # # Dump an array, get back a YAML string # Psych.dump(['a', 'b']) # => "---\n- a\n- b\n" # # # Dump an array to an IO object # Psych.dump(['a', 'b'], StringIO.new) # => #<StringIO:0x000001009d0890> # # # Dump an array with indentation set # Psych.dump(['a', ['b']], :indentation => 3) # => "---\n- a\n- - b\n" # # # Dump an array to an IO with indentation set # Psych.dump(['a', ['b']], StringIO.new, :indentation => 3) def self.dump o, io = nil, options = {} if Hash === io options = io io = nil end visitor = Psych::Visitors::YAMLTree.new options visitor << o visitor.tree.yaml io, options end ### # Dump a list of objects as separate documents to a document stream. # # Example: # # Psych.dump_stream("foo\n ", {}) # => "--- ! \"foo\\n \"\n--- {}\n" def self.dump_stream *objects visitor = Psych::Visitors::YAMLTree.new {} objects.each do |o| visitor << o end visitor.tree.yaml end ### # Dump Ruby object +o+ to a JSON string. def self.to_json o visitor = Psych::Visitors::JSONTree.new visitor << o visitor.tree.yaml end ### # Load multiple documents given in +yaml+. Returns the parsed documents # as a list. If a block is given, each document will be converted to ruby # and passed to the block during parsing # # Example: # # Psych.load_stream("--- foo\n...\n--- bar\n...") # => ['foo', 'bar'] # # list = [] # Psych.load_stream("--- foo\n...\n--- bar\n...") do |ruby| # list << ruby # end # list # => ['foo', 'bar'] # def self.load_stream yaml, filename = nil if block_given? parse_stream(yaml, filename) do |node| yield node.to_ruby end else parse_stream(yaml, filename).children.map { |child| child.to_ruby } end end ### # Load the document contained in +filename+. Returns the yaml contained in # +filename+ as a ruby object def self.load_file filename File.open(filename, 'r:bom|utf-8') { |f| self.load f, filename } end # :stopdoc: @domain_types = {} def self.add_domain_type domain, type_tag, &block key = ['tag', domain, type_tag].join ':' @domain_types[key] = [key, block] @domain_types["tag:#{type_tag}"] = [key, block] end def self.add_builtin_type type_tag, &block domain = 'yaml.org,2002' key = ['tag', domain, type_tag].join ':' @domain_types[key] = [key, block] end def self.remove_type type_tag @domain_types.delete type_tag end @load_tags = {} @dump_tags = {} def self.add_tag tag, klass @load_tags[tag] = klass @dump_tags[klass] = tag end class << self attr_accessor :load_tags attr_accessor :dump_tags attr_accessor :domain_types end # :startdoc: end
Upload File
Create Folder