diff --git a/src/builder.rs b/src/builder.rs index 0010191..d425f3c 100644 --- a/src/builder.rs +++ b/src/builder.rs @@ -165,29 +165,45 @@ fn format( builder.start_node(rowan::SyntaxKind(kind as u16)); let rule = match kind { + // a b rnix::SyntaxKind::NODE_APPLY => crate::rules::apply::rule, + // assert a; b rnix::SyntaxKind::NODE_ASSERT => crate::rules::assert::rule, + // { } rnix::SyntaxKind::NODE_ATTR_SET => crate::rules::attr_set::rule, + // a $op b rnix::SyntaxKind::NODE_BIN_OP => crate::rules::bin_op::rule, + // rnix::SyntaxKind::NODE_DYNAMIC => crate::rules::dynamic::rule, + // implementation detail of rnix-parser rnix::SyntaxKind::NODE_ERROR => { eprintln!("Warning: found an error node at: {}", path); crate::rules::default } + // $identifier rnix::SyntaxKind::NODE_IDENT => crate::rules::default, + // if a then b else c rnix::SyntaxKind::NODE_IF_ELSE => crate::rules::if_else::rule, + // inherit NODE_INHERIT_FROM? b+ ; rnix::SyntaxKind::NODE_INHERIT => crate::rules::inherit::rule, + // ( a ) rnix::SyntaxKind::NODE_INHERIT_FROM => { - crate::rules::inherit::rule + crate::rules::paren::rule } rnix::SyntaxKind::NODE_KEY => crate::rules::default, + // a = b; rnix::SyntaxKind::NODE_KEY_VALUE => { crate::rules::key_value::rule } + // a: b rnix::SyntaxKind::NODE_LAMBDA => crate::rules::lambda::rule, + // let NODE_KEY_VALUE* in b; rnix::SyntaxKind::NODE_LET_IN => crate::rules::let_in::rule, + // [ ... ] rnix::SyntaxKind::NODE_LIST => crate::rules::list::rule, + // $literal rnix::SyntaxKind::NODE_LITERAL => crate::rules::default, + // let { } rnix::SyntaxKind::NODE_LEGACY_LET => { eprintln!( "Warning: found a `legacy let` expression at: {}", @@ -195,25 +211,36 @@ fn format( ); crate::rules::default } + // a or b rnix::SyntaxKind::NODE_OR_DEFAULT => { crate::rules::or_default::rule } + // ( a ) rnix::SyntaxKind::NODE_PAREN => crate::rules::paren::rule, + // a | a ? b rnix::SyntaxKind::NODE_PAT_BIND => crate::rules::pat_bind::rule, + // { NODE_PAT_ENTRY* } rnix::SyntaxKind::NODE_PATTERN => crate::rules::pattern::rule, + // NODE_PAT_BIND | TOKEN_ELLIPSIS rnix::SyntaxKind::NODE_PAT_ENTRY => { crate::rules::pat_entry::rule } + // /path/to/${a} rnix::SyntaxKind::NODE_PATH_WITH_INTERPOL => { crate::rules::default } + // implementation detail of rowan rnix::SyntaxKind::NODE_ROOT => crate::rules::root::rule, rnix::SyntaxKind::NODE_SELECT => crate::rules::select::rule, + // "..." || ''...'' rnix::SyntaxKind::NODE_STRING => crate::rules::string::rule, + // ${a} rnix::SyntaxKind::NODE_STRING_INTERPOL => { crate::rules::string_interpol::rule } + // !a rnix::SyntaxKind::NODE_UNARY_OP => crate::rules::default, + // with a; b rnix::SyntaxKind::NODE_WITH => crate::rules::with::rule, kind => { panic!("Missing rule for {:?} at: {}", kind, path); diff --git a/tests/cases/inherit_from/out b/tests/cases/inherit_from/out index b430a4d..406eecd 100644 --- a/tests/cases/inherit_from/out +++ b/tests/cases/inherit_from/out @@ -92,7 +92,7 @@ /* d */ - ) + ) f h ; @@ -104,7 +104,7 @@ /* d */ - ) + ) f h /* @@ -119,7 +119,7 @@ /* d */ - ) + ) f /* g @@ -134,7 +134,7 @@ /* d */ - ) + ) f /* g @@ -152,7 +152,7 @@ /* d */ - ) + ) /* e */ @@ -167,7 +167,7 @@ /* d */ - ) + ) /* e */ @@ -185,7 +185,7 @@ /* d */ - ) + ) /* e */ @@ -203,7 +203,7 @@ /* d */ - ) + ) /* e */ @@ -224,7 +224,7 @@ b */ c - ) + ) f h ; @@ -236,7 +236,7 @@ b */ c - ) + ) f h /* @@ -251,7 +251,7 @@ b */ c - ) + ) f /* g @@ -266,7 +266,7 @@ b */ c - ) + ) f /* g @@ -284,7 +284,7 @@ b */ c - ) + ) /* e */ @@ -299,7 +299,7 @@ b */ c - ) + ) /* e */ @@ -317,7 +317,7 @@ b */ c - ) + ) /* e */ @@ -335,7 +335,7 @@ b */ c - ) + ) /* e */ @@ -359,7 +359,7 @@ /* d */ - ) + ) f h ; @@ -374,7 +374,7 @@ /* d */ - ) + ) f h /* @@ -392,7 +392,7 @@ /* d */ - ) + ) f /* g @@ -410,7 +410,7 @@ /* d */ - ) + ) f /* g @@ -431,7 +431,7 @@ /* d */ - ) + ) /* e */ @@ -449,7 +449,7 @@ /* d */ - ) + ) /* e */ @@ -470,7 +470,7 @@ /* d */ - ) + ) /* e */ @@ -491,7 +491,7 @@ /* d */ - ) + ) /* e */ @@ -631,7 +631,7 @@ /* d */ - ) + ) f h ; @@ -646,7 +646,7 @@ /* d */ - ) + ) f h /* @@ -664,7 +664,7 @@ /* d */ - ) + ) f /* g @@ -682,7 +682,7 @@ /* d */ - ) + ) f /* g @@ -703,7 +703,7 @@ /* d */ - ) + ) /* e */ @@ -721,7 +721,7 @@ /* d */ - ) + ) /* e */ @@ -742,7 +742,7 @@ /* d */ - ) + ) /* e */ @@ -763,7 +763,7 @@ /* d */ - ) + ) /* e */ @@ -787,7 +787,7 @@ b */ c - ) + ) f h ; @@ -802,7 +802,7 @@ b */ c - ) + ) f h /* @@ -820,7 +820,7 @@ b */ c - ) + ) f /* g @@ -838,7 +838,7 @@ b */ c - ) + ) f /* g @@ -859,7 +859,7 @@ b */ c - ) + ) /* e */ @@ -877,7 +877,7 @@ b */ c - ) + ) /* e */ @@ -898,7 +898,7 @@ b */ c - ) + ) /* e */ @@ -919,7 +919,7 @@ b */ c - ) + ) /* e */ @@ -946,7 +946,7 @@ /* d */ - ) + ) f h ; @@ -964,7 +964,7 @@ /* d */ - ) + ) f h /* @@ -985,7 +985,7 @@ /* d */ - ) + ) f /* g @@ -1006,7 +1006,7 @@ /* d */ - ) + ) f /* g @@ -1030,7 +1030,7 @@ /* d */ - ) + ) /* e */ @@ -1051,7 +1051,7 @@ /* d */ - ) + ) /* e */ @@ -1075,7 +1075,7 @@ /* d */ - ) + ) /* e */ @@ -1099,7 +1099,7 @@ /* d */ - ) + ) /* e */