@@ -73,12 +73,12 @@ pub Module: Module<'arena, ByteRange> = {
7373};
7474
7575Item: Item<'arena, ByteRange> = {
76- <start: @L> "def" <label: RangedName> <patterns: AnnPattern*> <type_ : (":" <LetTerm>)?> "=" <expr: Term> ";" <end: @R> => {
76+ <start: @L> "def" <label: RangedName> <patterns: AnnPattern*> <r#type : (":" <LetTerm>)?> "=" <expr: Term> ";" <end: @R> => {
7777 Item::Def(ItemDef {
7878 range: ByteRange::new(file_id, start, end),
7979 label,
8080 patterns: scope.to_scope_from_iter(patterns),
81- type_: type_ .map(|type_ | scope.to_scope(type_ ) as &_),
81+ r#type: r#type .map(|r#type | scope.to_scope(r#type ) as &_),
8282 expr: scope.to_scope(expr),
8383 })
8484 },
@@ -99,17 +99,16 @@ Pattern: Pattern<ByteRange> = {
9999
100100AnnPattern: (Pattern<ByteRange>, Option<&'arena Term<'arena, ByteRange>>) = {
101101 <pattern: Pattern> => (pattern, None),
102- "(" <pattern: Pattern> ":" <type_ : LetTerm> ")" => (pattern, Some(scope.to_scope(type_ ))),
102+ "(" <pattern: Pattern> ":" <r#type : LetTerm> ")" => (pattern, Some(scope.to_scope(r#type ))),
103103};
104104
105105pub Term: Term<'arena, ByteRange> = {
106106 LetTerm,
107- // FIXME: LALRPOP does not accept raw identifiers (see: https://github.com/lalrpop/lalrpop/issues/613)
108- <start: @L> <expr: LetTerm> ":" <type_: LetTerm> <end: @R> => {
107+ <start: @L> <expr: LetTerm> ":" <r#type: LetTerm> <end: @R> => {
109108 Term::Ann(
110109 ByteRange::new(file_id, start, end),
111110 scope.to_scope(expr),
112- scope.to_scope(type_ ),
111+ scope.to_scope(r#type ),
113112 )
114113 },
115114};
@@ -247,13 +246,13 @@ FormatField: FormatField<'arena, ByteRange> = {
247246 <label: RangedName> "<-" <format: Term> <pred: ("where" <Term>)?> => {
248247 FormatField::Format { label, format, pred }
249248 },
250- "let" <label: RangedName> <type_ : (":" <Term>)?> "=" <expr: Term> => {
251- FormatField::Computed { label, type_ , expr }
249+ "let" <label: RangedName> <r#type : (":" <Term>)?> "=" <expr: Term> => {
250+ FormatField::Computed { label, r#type , expr }
252251 },
253252};
254253
255254TypeField: TypeField<'arena, ByteRange> = {
256- <label: RangedName> ":" <type_ : Term> => TypeField { label, type_ },
255+ <label: RangedName> ":" <r#type : Term> => TypeField { label, r#type },
257256};
258257
259258ExprField: ExprField<'arena, ByteRange> = {
0 commit comments