MCPcopy Create free account
hub / github.com/Doctave/dossier / parse_parameters

Function parse_parameters

dossier-ts/src/function.rs:159–184  ·  view source on GitHub ↗
(
    parameters: &Node,
    children: &mut Vec<Symbol>,
    ctx: &mut ParserContext,
)

Source from the content-addressed store, hash-verified

157}
158
159pub(crate) fn parse_parameters(
160 parameters: &Node,
161 children: &mut Vec<Symbol>,
162 ctx: &mut ParserContext,
163) -> Result<()> {
164 assert_eq!(parameters.kind(), "formal_parameters");
165
166 let mut cursor = parameters.walk();
167 cursor.goto_first_child();
168
169 loop {
170 if cursor.node().kind() == "required_parameter"
171 || cursor.node().kind() == "optional_parameter"
172 {
173 let mut parameter = parameter::parse(&cursor.node(), ctx)?;
174 parameter.context = Some(SymbolContext::Parameter);
175 children.push(parameter);
176 }
177
178 if !cursor.goto_next_sibling() {
179 break;
180 }
181 }
182
183 Ok(())
184}
185
186pub(crate) fn parse_type_parameters(
187 type_parameters: &Node,

Callers 2

parseFunction · 0.70
parseFunction · 0.70

Calls 1

parseFunction · 0.70

Tested by

no test coverage detected