Class: YARD::Parser::Ruby::RipperParser
- Inherits:
-
Ripper
- Object
- Ripper
- YARD::Parser::Ruby::RipperParser
- Defined in:
- lib/yard/parser/ruby/ruby_parser.rb
Constant Summary
Instance Attribute Summary collapse
-
#ast ⇒ Object
(also: #root)
readonly
Returns the value of attribute ast.
-
#charno ⇒ Object
readonly
Returns the value of attribute charno.
-
#comments ⇒ Object
readonly
Returns the value of attribute comments.
-
#encoding_line ⇒ Object
readonly
Returns the value of attribute encoding_line.
-
#file ⇒ Object
readonly
Returns the value of attribute file.
-
#shebang_line ⇒ Object
readonly
Returns the value of attribute shebang_line.
-
#tokens ⇒ Object
readonly
Returns the value of attribute tokens.
Instance Method Summary collapse
- #enumerator ⇒ Object
- #file_encoding ⇒ Object
-
#initialize(source, filename, *args) ⇒ RipperParser
constructor
A new instance of RipperParser.
- #parse ⇒ Object
Constructor Details
#initialize(source, filename, *args) ⇒ RipperParser
Returns a new instance of RipperParser
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 29 def initialize(source, filename, *args) super @last_ns_token = nil @file = filename @source = source @tokens = [] @comments = {} @comments_range = {} @comments_flags = {} @heredoc_tokens = nil @heredoc_state = nil @map = {} @ns_charno = 0 @list = [] @charno = 0 @shebang_line = nil @encoding_line = nil @file_encoding = nil end |
Instance Attribute Details
#ast ⇒ Object (readonly) Also known as: root
Returns the value of attribute ast
25 26 27 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 25 def ast @ast end |
#charno ⇒ Object (readonly)
Returns the value of attribute charno
25 26 27 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 25 def charno @charno end |
#comments ⇒ Object (readonly)
Returns the value of attribute comments
25 26 27 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 25 def comments @comments end |
#encoding_line ⇒ Object (readonly)
Returns the value of attribute encoding_line
26 27 28 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 26 def encoding_line @encoding_line end |
#file ⇒ Object (readonly)
Returns the value of attribute file
25 26 27 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 25 def file @file end |
#shebang_line ⇒ Object (readonly)
Returns the value of attribute shebang_line
26 27 28 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 26 def shebang_line @shebang_line end |
#tokens ⇒ Object (readonly)
Returns the value of attribute tokens
25 26 27 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 25 def tokens @tokens end |
Instance Method Details
#enumerator ⇒ Object
58 59 60 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 58 def enumerator ast.children end |
#file_encoding ⇒ Object
62 63 64 65 66 67 68 69 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 62 def file_encoding return nil unless defined?(::Encoding) return @file_encoding if @file_encoding return Encoding.default_internal unless @encoding_line if match = @encoding_line.match(SourceParser::ENCODING_LINE) @file_encoding = match.captures.last end end |
#parse ⇒ Object
49 50 51 52 53 54 55 56 |
# File 'lib/yard/parser/ruby/ruby_parser.rb', line 49 def parse @ast = super @ast.full_source = @source @ast.file = @file freeze_tree insert_comments self end |