MCPcopy Create free account
hub / github.com/LPC4/Full-Stack / parse_asm_block

Method parse_asm_block

crates/hll-to-ir/src/parser.rs:647–668  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

645 if !receiver_ok {
646 return Err(self.error(&format!(
647 "impl method `self` must be `{type_name}` or `{type_name}*`"
648 )));
649 }
650 }
651
652 // Owner generics apply to every function member; explicit member
653 // generics follow them.
654 let mut merged_generics = owner_generics.clone();
655 for generic in generics {
656 if merged_generics.contains(&generic) {
657 return Err(self.error(&format!(
658 "method generic `{generic}` shadows an impl owner generic"
659 )));
660 }
661 merged_generics.push(generic);
662 }
663 let mut merged_bounds = owner_bounds.clone();
664 merged_bounds.extend(bounds);
665
666 methods.push(Declaration {
667 decl: DeclNode::Function {
668 name: format!("{type_name}_{name}"),
669 generics: merged_generics,
670 bounds: merged_bounds,
671 params,

Callers 1

parse_statementMethod · 0.80

Calls 7

expect_lbraceMethod · 0.80
consume_terminatorsMethod · 0.80
check_rbraceMethod · 0.80
is_eofMethod · 0.80
pushMethod · 0.80
expect_rbraceMethod · 0.80
advanceMethod · 0.45

Tested by

no test coverage detected