Bladeren bron

Define and use `AnyImplAsId` (#3692)

`NodeCategory::ImplAs` was introduced in #3683.
josh11b 2 jaren geleden
bovenliggende
commit
da34f61ef9
2 gewijzigde bestanden met toevoegingen van 2 en 1 verwijderingen
  1. 1 0
      toolchain/parse/node_ids.h
  2. 1 1
      toolchain/parse/typed_nodes.h

+ 1 - 0
toolchain/parse/node_ids.h

@@ -64,6 +64,7 @@ struct NodeIdInCategory : public NodeId {
 // Aliases for `NodeIdInCategory` to describe particular categories of nodes.
 using AnyDeclId = NodeIdInCategory<NodeCategory::Decl>;
 using AnyExprId = NodeIdInCategory<NodeCategory::Expr>;
+using AnyImplAsId = NodeIdInCategory<NodeCategory::ImplAs>;
 using AnyMemberNameId = NodeIdInCategory<NodeCategory::MemberName>;
 using AnyModifierId = NodeIdInCategory<NodeCategory::Modifier>;
 using AnyNameComponentId = NodeIdInCategory<NodeCategory::NameComponent>;

+ 1 - 1
toolchain/parse/typed_nodes.h

@@ -877,7 +877,7 @@ struct ImplSignature {
   ImplIntroducerId introducer;
   llvm::SmallVector<AnyModifierId> modifiers;
   std::optional<ImplForallId> forall;
-  NodeIdOneOf<DefaultSelfImplAs, TypeImplAs> as;
+  AnyImplAsId as;
   AnyExprId interface;
 };