Class: Ast::Merge::AstNode::Point
- Inherits:
-
Struct
- Object
- Struct
- Ast::Merge::AstNode::Point
- Defined in:
- lib/ast/merge/ast_node.rb
Overview
Point class compatible with TreeHaver::Point Provides both method and hash-style access to row/column
Instance Attribute Summary collapse
-
#column ⇒ Object
Returns the value of attribute column.
-
#row ⇒ Object
Returns the value of attribute row.
Instance Method Summary collapse
-
#[](key) ⇒ Object
Hash-like access for compatibility.
-
#inspect ⇒ String
Return a debug-oriented representation of the point.
-
#to_h ⇒ Hash{Symbol => Integer, nil}
Return the point as a Hash.
-
#to_s ⇒ String
Return a compact human-readable point representation.
Instance Attribute Details
#column ⇒ Object
Returns the value of attribute column
47 48 49 |
# File 'lib/ast/merge/ast_node.rb', line 47 def column @column end |
#row ⇒ Object
Returns the value of attribute row
47 48 49 |
# File 'lib/ast/merge/ast_node.rb', line 47 def row @row end |
Instance Method Details
#[](key) ⇒ Object
Hash-like access for compatibility
49 50 51 52 53 54 |
# File 'lib/ast/merge/ast_node.rb', line 49 def [](key) case key when :row, 'row' then row when :column, 'column' then column end end |
#inspect ⇒ String
Return a debug-oriented representation of the point.
73 74 75 |
# File 'lib/ast/merge/ast_node.rb', line 73 def inspect "#<Ast::Merge::AstNode::Point row=#{row} column=#{column}>" end |
#to_h ⇒ Hash{Symbol => Integer, nil}
Return the point as a Hash.
59 60 61 |
# File 'lib/ast/merge/ast_node.rb', line 59 def to_h { row: row, column: column } end |
#to_s ⇒ String
Return a compact human-readable point representation.
66 67 68 |
# File 'lib/ast/merge/ast_node.rb', line 66 def to_s "(#{row}, #{column})" end |