Class: JsxRosetta::Routes::Lowering
- Inherits:
-
Object
- Object
- JsxRosetta::Routes::Lowering
- Defined in:
- lib/jsx_rosetta/routes.rb
Instance Method Summary collapse
Instance Method Details
#lower(ast_file) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/jsx_rosetta/routes.rb', line 17 def lower(ast_file) routes = [] ast_file.walk do |node| next unless node.is_a?(AST::JSXElement) next unless node.tag_name == "Route" path = extract_path(node) element_name = extract_element_name(node) next if path.nil? || element_name.nil? routes << IR::RouteEntry.new(path: path, element_name: element_name) end IR::RouteTree.new(routes: routes) end |