Class: Mutant::AST::Regexp::Transformer::LookupTable::Table Private
- Inherits:
-
Object
- Object
- Mutant::AST::Regexp::Transformer::LookupTable::Table
- Includes:
- Adamantium
- Defined in:
- lib/mutant/ast/regexp/transformer.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Table mapping ast types to object information for regexp domain
Class Method Summary collapse
-
.create(*rows) ⇒ Table
private
Coerce array of mapping information into structured table.
Instance Method Summary collapse
-
#lookup(type) ⇒ Mapping
private
Lookup mapping information given an ast node type.
-
#types ⇒ Array<Symbol>
private
Types defined by the table.
Class Method Details
.create(*rows) ⇒ Table
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Coerce array of mapping information into structured table
141 142 143 144 145 146 147 |
# File 'lib/mutant/ast/regexp/transformer.rb', line 141 def self.create(*rows) table = rows.map do |ast_type, token, klass| [ast_type, Mapping.new(::Regexp::Token.new(*token), klass)] end.to_h new(table) end |
Instance Method Details
#lookup(type) ⇒ Mapping
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Lookup mapping information given an ast node type
163 164 165 |
# File 'lib/mutant/ast/regexp/transformer.rb', line 163 def lookup(type) table.fetch(type) end |
#types ⇒ Array<Symbol>
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Types defined by the table
154 155 156 |
# File 'lib/mutant/ast/regexp/transformer.rb', line 154 def types table.keys end |