Module: Ibex::IR
- Defined in:
- lib/ibex/ir.rb,
lib/ibex/ir/lexer_ir.rb,
lib/ibex/ir/migration.rb,
lib/ibex/ir/serialize.rb,
lib/ibex/ir/validator.rb,
lib/ibex/ir/grammar_ir.rb,
lib/ibex/ir/automaton_ir.rb,
lib/ibex/ir/validator/base.rb,
lib/ibex/ir/validator/lexer.rb,
lib/ibex/ir/validator/grammar.rb,
lib/ibex/ir/validator/automaton.rb,
sig/ibex/ir.rbs,
sig/ibex/ir/lexer_ir.rbs,
sig/ibex/ir/migration.rbs,
sig/ibex/ir/serialize.rbs,
sig/ibex/ir/validator.rbs,
sig/ibex/ir/grammar_ir.rbs,
sig/ibex/ir/automaton_ir.rbs,
sig/ibex/ir/validator/base.rbs,
sig/ibex/ir/validator/lexer.rbs,
sig/ibex/ir/validator/grammar.rbs,
sig/ibex/ir/validator/automaton.rbs
Defined Under Namespace
Modules: Migration, Serialize, Validator
Classes: Action, Automaton, AutomatonItem, AutomatonState, Grammar, GrammarSymbol, Lexer, LexerRule, Production, UserCodeChunk
Constant Summary
collapse
- LEXER_SCHEMA_VERSION =
1
- SUPPORTED_LEXER_SCHEMA_VERSIONS =
[LEXER_SCHEMA_VERSION].freeze
- SCHEMA_VERSION =
2
- SUPPORTED_SCHEMA_VERSIONS =
[1, 2].freeze
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.deep_freeze(value) ⇒ Object
9
10
11
12
13
14
15
16
17
18
19
|
# File 'lib/ibex/ir/grammar_ir.rb', line 9
def deep_freeze(value)
case value
when Array then value.each { |item| deep_freeze(item) }
when Hash
value.each do |key, item|
deep_freeze(key)
deep_freeze(item)
end
end
value.freeze
end
|
Instance Method Details
#self?.deep_freeze ⇒ Object
10
|
# File 'sig/ibex/ir/grammar_ir.rbs', line 10
def self?.deep_freeze: (untyped value) -> untyped
|