Fix formatting.

This commit is contained in:
Jesse Brault 2025-05-13 10:42:08 -05:00
parent 82af6b4dfb
commit e4c93f319d

View File

@ -1,4 +1,9 @@
use crate::ast::{CompilationUnit, DelegateOrIdentifier, Fqn, FunctionModifier, FunctionTypeUse, GenericArgument, GenericArguments, GenericParameter, GenericParameters, Identifier, InputArgument, InputArguments, InterfaceOrClassTypeUse, Reference, References, ReturnType, TupleTypeUse, TypeUse, VoidOrTypeUse};
use crate::ast::{
CompilationUnit, DelegateOrIdentifier, Fqn, FunctionModifier, FunctionTypeUse, GenericArgument,
GenericArguments, GenericParameter, GenericParameters, Identifier, InputArgument,
InputArguments, InterfaceOrClassTypeUse, Reference, References, ReturnType, TupleTypeUse,
TypeUse, VoidOrTypeUse,
};
use crate::parser::Rule;
use pest::iterators::Pair;
@ -90,7 +95,7 @@ fn build_function_type_use(function_pair: Pair<Rule>) -> FunctionTypeUse {
}
Rule::ReturnType => {
return_type = Some(build_return_type(inner_pair));
},
}
_ => unreachable!(),
}
}
@ -173,20 +178,19 @@ fn build_function_input_arguments(pair: Pair<Rule>) -> InputArguments {
fn build_return_type(return_type_pair: Pair<Rule>) -> ReturnType {
let mut inner = return_type_pair.into_inner();
let declared_type_pair = inner.next().unwrap();
let declared_type = match declared_type_pair.as_rule() {
Rule::Void => VoidOrTypeUse::Void,
Rule::TypeUse => VoidOrTypeUse::TypeUse(Box::new(
build_type_use(declared_type_pair)
)),
Rule::TypeUse => VoidOrTypeUse::TypeUse(Box::new(build_type_use(declared_type_pair))),
_ => unreachable!(),
};
let references = inner.next().map(|ref_list_pair| {
expect_and_use(ref_list_pair, Rule::RefList, build_references)
}).unwrap_or(References(vec![]));
let references = inner
.next()
.map(|ref_list_pair| expect_and_use(ref_list_pair, Rule::RefList, build_references))
.unwrap_or(References(vec![]));
ReturnType {
declared_type,
references,
@ -197,12 +201,17 @@ fn build_references(ref_list_pair: Pair<Rule>) -> References {
let mut identifiers: Vec<Identifier> = vec![];
for pair in ref_list_pair.into_inner() {
match pair.as_rule() {
Rule::Ref => {},
Rule::Ref => {}
Rule::Identifier => {
identifiers.push(build_identifier(pair));
},
}
_ => unreachable!(),
}
}
References(identifiers.into_iter().map(|identifier| Reference(identifier)).collect())
References(
identifiers
.into_iter()
.map(|identifier| Reference(identifier))
.collect(),
)
}