SM0 She11
Path:
/
/
opt
/
alt
/
ruby32
/
share
/
ruby
Full Path (server): /opt/alt/ruby32/share/ruby
Create Fil3
Upl04d Fil3
📄 English.rb
[E]
[D]
[R]
📄 abbrev.rb
[E]
[D]
[R]
📄 base64.rb
[E]
[D]
[R]
📁 benchmark
Open
[D]
[R]
📄 benchmark.rb
[E]
[D]
[R]
📁 bigdecimal
Open
[D]
[R]
📄 bigdecimal.rb
[E]
[D]
[R]
📁 cgi
Open
[D]
[R]
📄 cgi.rb
[E]
[D]
[R]
📄 coverage.rb
[E]
[D]
[R]
📁 csv
Open
[D]
[R]
📄 csv.rb
[E]
[D]
[R]
📄 date.rb
[E]
[D]
[R]
📄 delegate.rb
[E]
[D]
[R]
📁 did_you_mean
Open
[D]
[R]
📄 did_you_mean.rb
[E]
[D]
[R]
📁 digest
Open
[D]
[R]
📄 digest.rb
[E]
[D]
[R]
📁 drb
Open
[D]
[R]
📄 drb.rb
[E]
[D]
[R]
📁 erb
Open
[D]
[R]
📄 erb.rb
[E]
[D]
[R]
📁 error_highlight
Open
[D]
[R]
📄 error_highlight.rb
[E]
[D]
[R]
📄 expect.rb
[E]
[D]
[R]
📁 fiddle
Open
[D]
[R]
📄 fiddle.rb
[E]
[D]
[R]
📄 fileutils.rb
[E]
[D]
[R]
📄 find.rb
[E]
[D]
[R]
📁 forwardable
Open
[D]
[R]
📄 forwardable.rb
[E]
[D]
[R]
📄 getoptlong.rb
[E]
[D]
[R]
📁 io
Open
[D]
[R]
📄 ipaddr.rb
[E]
[D]
[R]
📁 json
Open
[D]
[R]
📄 json.rb
[E]
[D]
[R]
📄 kconv.rb
[E]
[D]
[R]
📁 logger
Open
[D]
[R]
📄 logger.rb
[E]
[D]
[R]
📄 mkmf.rb
[E]
[D]
[R]
📄 monitor.rb
[E]
[D]
[R]
📄 mutex_m.rb
[E]
[D]
[R]
📁 net
Open
[D]
[R]
📁 objspace
Open
[D]
[R]
📄 objspace.rb
[E]
[D]
[R]
📄 observer.rb
[E]
[D]
[R]
📄 open-uri.rb
[E]
[D]
[R]
📁 open3
Open
[D]
[R]
📄 open3.rb
[E]
[D]
[R]
📁 openssl
Open
[D]
[R]
📄 openssl.rb
[E]
[D]
[R]
📄 optionparser.rb
[E]
[D]
[R]
📁 optparse
Open
[D]
[R]
📄 optparse.rb
[E]
[D]
[R]
📄 ostruct.rb
[E]
[D]
[R]
📄 pathname.rb
[E]
[D]
[R]
📄 pp.rb
[E]
[D]
[R]
📄 prettyprint.rb
[E]
[D]
[R]
📄 pstore.rb
[E]
[D]
[R]
📁 psych
Open
[D]
[R]
📄 psych.rb
[E]
[D]
[R]
📁 racc
Open
[D]
[R]
📄 racc.rb
[E]
[D]
[R]
📁 random
Open
[D]
[R]
📄 readline.rb
[E]
[D]
[R]
📁 reline
Open
[D]
[R]
📄 reline.rb
[E]
[D]
[R]
📄 resolv-replace.rb
[E]
[D]
[R]
📄 resolv.rb
[E]
[D]
[R]
📁 rinda
Open
[D]
[R]
📁 ripper
Open
[D]
[R]
📄 ripper.rb
[E]
[D]
[R]
📁 ruby_vm
Open
[D]
[R]
📄 securerandom.rb
[E]
[D]
[R]
📁 set
Open
[D]
[R]
📄 set.rb
[E]
[D]
[R]
📄 shellwords.rb
[E]
[D]
[R]
📄 singleton.rb
[E]
[D]
[R]
📄 socket.rb
[E]
[D]
[R]
📁 syntax_suggest
Open
[D]
[R]
📄 syntax_suggest.rb
[E]
[D]
[R]
📁 syslog
Open
[D]
[R]
📄 tempfile.rb
[E]
[D]
[R]
📄 time.rb
[E]
[D]
[R]
📄 timeout.rb
[E]
[D]
[R]
📄 tmpdir.rb
[E]
[D]
[R]
📄 tsort.rb
[E]
[D]
[R]
📄 un.rb
[E]
[D]
[R]
📁 unicode_normalize
Open
[D]
[R]
📁 uri
Open
[D]
[R]
📄 uri.rb
[E]
[D]
[R]
📁 vendor_ruby
Open
[D]
[R]
📄 weakref.rb
[E]
[D]
[R]
📁 yaml
Open
[D]
[R]
📄 yaml.rb
[E]
[D]
[R]
Editing: ripper.rb
# frozen_string_literal: true require 'ripper/core' require 'ripper/lexer' require 'ripper/filter' require 'ripper/sexp' # Ripper is a Ruby script parser. # # You can get information from the parser with event-based style. # Information such as abstract syntax trees or simple lexical analysis of the # Ruby program. # # == Usage # # Ripper provides an easy interface for parsing your program into a symbolic # expression tree (or S-expression). # # Understanding the output of the parser may come as a challenge, it's # recommended you use PP to format the output for legibility. # # require 'ripper' # require 'pp' # # pp Ripper.sexp('def hello(world) "Hello, #{world}!"; end') # #=> [:program, # [[:def, # [:@ident, "hello", [1, 4]], # [:paren, # [:params, [[:@ident, "world", [1, 10]]], nil, nil, nil, nil, nil, nil]], # [:bodystmt, # [[:string_literal, # [:string_content, # [:@tstring_content, "Hello, ", [1, 18]], # [:string_embexpr, [[:var_ref, [:@ident, "world", [1, 27]]]]], # [:@tstring_content, "!", [1, 33]]]]], # nil, # nil, # nil]]]] # # You can see in the example above, the expression starts with +:program+. # # From here, a method definition at +:def+, followed by the method's identifier # <code>:@ident</code>. After the method's identifier comes the parentheses # +:paren+ and the method parameters under +:params+. # # Next is the method body, starting at +:bodystmt+ (+stmt+ meaning statement), # which contains the full definition of the method. # # In our case, we're simply returning a String, so next we have the # +:string_literal+ expression. # # Within our +:string_literal+ you'll notice two <code>@tstring_content</code>, # this is the literal part for <code>Hello, </code> and <code>!</code>. Between # the two <code>@tstring_content</code> statements is a +:string_embexpr+, # where _embexpr_ is an embedded expression. Our expression consists of a local # variable, or +var_ref+, with the identifier (<code>@ident</code>) of +world+. # # == Resources # # * {Ruby Inside}[http://www.rubyinside.com/using-ripper-to-see-how-ruby-is-parsing-your-code-5270.html] # # == Requirements # # * ruby 1.9 (support CVS HEAD only) # * bison 1.28 or later (Other yaccs do not work) # # == License # # Ruby License. # # - Minero Aoki # - aamine@loveruby.net # - http://i.loveruby.net class Ripper; end
Save