16 lines
262 B
Ruby
16 lines
262 B
Ruby
class Imbecile
|
|
|
|
class Parser
|
|
|
|
def initialize(tokens, rules)
|
|
start_items = rules["Start"].patterns.map do |pattern|
|
|
Item.new(pattern, 0)
|
|
end
|
|
start_item_set = ItemSet.new(start_items)
|
|
start_item_set.close!
|
|
end
|
|
|
|
end
|
|
|
|
end
|