feat(ast_tools): add EnumDef::all_inherits method#23950
Conversation
|
@claude review |
Merge activity
|
bb3a201 to
84f8e5b
Compare
`EnumDef::inherits_enums` returns an iterator of enums that an enum _directly_ inherits from. Add a method `EnumDef::all_inherits` which yields _all_ inherited enums, including that which are inherited from transitively. e.g.: - `AssignmentTarget` inherits `SimpleAssignmentTarget` and `AssignmentTargetPattern` - `SimpleAssignmentTarget` inherits `MemberExpression`. The 2 methods returns iterators yielding: - `inherits_enums`: `SimpleAssignmentTarget`, `AssignmentTargetPattern` - `all_inherits`: `SimpleAssignmentTarget`, `MemberExpression`, `AssignmentTargetPattern` Use the new `AllInheritsIter` iterator to simplify the `AllVariantsIter` iterator.
ef7bdaf to
d917fdb
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
1 similar comment
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
`EnumDef::inherits_enums` returns an iterator of enums that an enum _directly_ inherits from. Add a method `EnumDef::all_inherits` which yields _all_ inherited enums, including that which are inherited from transitively. e.g.: - `AssignmentTarget` inherits `SimpleAssignmentTarget` and `AssignmentTargetPattern` - `SimpleAssignmentTarget` inherits `MemberExpression`. The 2 methods returns iterators yielding: - `inherits_enums`: `SimpleAssignmentTarget`, `AssignmentTargetPattern` - `all_inherits`: `SimpleAssignmentTarget`, `MemberExpression`, `AssignmentTargetPattern` Use the new `AllInheritsIter` iterator to simplify the `AllVariantsIter` iterator.
84f8e5b to
a10ac8f
Compare
d917fdb to
1bb1702
Compare
`EnumDef::inherits_enums` returns an iterator of enums that an enum _directly_ inherits from. Add a method `EnumDef::all_inherits` which yields _all_ inherited enums, including that which are inherited from transitively. e.g.: - `AssignmentTarget` inherits `SimpleAssignmentTarget` and `AssignmentTargetPattern` - `SimpleAssignmentTarget` inherits `MemberExpression`. The 2 methods returns iterators yielding: - `inherits_enums`: `SimpleAssignmentTarget`, `AssignmentTargetPattern` - `all_inherits`: `SimpleAssignmentTarget`, `MemberExpression`, `AssignmentTargetPattern` Use the new `AllInheritsIter` iterator to simplify the `AllVariantsIter` iterator.

EnumDef::inherits_enumsreturns an iterator of enums that an enum directly inherits from.Add a method
EnumDef::all_inheritswhich yields all inherited enums, including that which are inherited from transitively.e.g.:
AssignmentTargetinheritsSimpleAssignmentTargetandAssignmentTargetPatternSimpleAssignmentTargetinheritsMemberExpression.The 2 methods returns iterators yielding:
inherits_enums:SimpleAssignmentTarget,AssignmentTargetPatternall_inherits:SimpleAssignmentTarget,MemberExpression,AssignmentTargetPatternUse the new
AllInheritsIteriterator to simplify theAllVariantsIteriterator.