Merge pull request #10277 from kabel/looser-formula-ast

utils/ast: Loose the check for Formula class node
This commit is contained in:
Seeker 2021-01-10 10:05:08 -08:00 committed by GitHub
commit bc6703c1bc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -138,10 +138,14 @@ module Utils
def process_formula(formula_contents) def process_formula(formula_contents)
processed_source, root_node = process_source(formula_contents) processed_source, root_node = process_source(formula_contents)
class_node = if root_node.class_type? class_node = root_node if root_node.class_type?
root_node if root_node.begin_type?
elsif root_node.begin_type? nodes = root_node.children.select(&:class_type?)
root_node.children.find { |n| n.class_type? && n.parent_class&.const_name == "Formula" } class_node = if nodes.count > 1
nodes.find { |n| n.parent_class&.const_name == "Formula" }
else
nodes.first
end
end end
raise "Could not find formula class!" if class_node.nil? raise "Could not find formula class!" if class_node.nil?