Add Rule#id
This commit is contained in:
parent
9d850294a9
commit
2837dfda6b
@ -44,7 +44,7 @@ class Propane
|
||||
elsif sliced = input.slice!(/\A(\S+)\s*->\s*(.*?)(?:;|<<\n(.*?)^>>\n)/m)
|
||||
rule_name, components, code = $1, $2, $3
|
||||
components = components.strip.split(/\s+/)
|
||||
@rules << Rule.new(rule_name, components, code, line_number)
|
||||
@rules << Rule.new(rule_name, components, code, line_number, @rules.size)
|
||||
else
|
||||
if input.size > 25
|
||||
input = input.slice(0..20) + "..."
|
||||
|
@ -10,6 +10,10 @@ class Propane
|
||||
# User code associated with the rule.
|
||||
attr_reader :code
|
||||
|
||||
# @return [Integer]
|
||||
# Rule ID.
|
||||
attr_reader :id
|
||||
|
||||
# @return [Integer]
|
||||
# Line number where the rule was defined in the input grammar.
|
||||
attr_reader :line_number
|
||||
@ -28,10 +32,13 @@ class Propane
|
||||
# User code associated with the rule.
|
||||
# @param line_number [Integer]
|
||||
# Line number where the rule was defined in the input grammar.
|
||||
def initialize(name, components, code, line_number)
|
||||
# @param id [Integer]
|
||||
# Rule ID.
|
||||
def initialize(name, components, code, line_number, id)
|
||||
@name = name
|
||||
@components = components
|
||||
@code = code
|
||||
@id = id
|
||||
@line_number = line_number
|
||||
end
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user