mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Parse self in expressions. (#2697)
`self` wasn't being handled in expression logic, only parameter logic. This is needed for `self.x`. Also renames SelfDeducedParameter to SelfIdentifier because it's parsed fairly consistently with Identifier; this better represents the situations where `self` will need to be handled, it's where `Identifier` is allowed (although `Identifier` could also refer to a type... but I still think `SelfDeducedParameter` is a more difficult to understand name).
This commit is contained in:
@@ -338,10 +338,10 @@ CARBON_PARSE_NODE_KIND_BRACKET(NamedConstraintDeclaration,
|
||||
NamedConstraintIntroducer)
|
||||
|
||||
// The `self` name and `Self` type keywords. Typically of the form `self: Self`:
|
||||
// SelfDeducedParameter
|
||||
// SelfIdentifier
|
||||
// SelfType
|
||||
// PatternBinding
|
||||
CARBON_PARSE_NODE_KIND_CHILD_COUNT(SelfDeducedParameter, 0)
|
||||
CARBON_PARSE_NODE_KIND_CHILD_COUNT(SelfIdentifier, 0)
|
||||
CARBON_PARSE_NODE_KIND_CHILD_COUNT(SelfType, 0)
|
||||
|
||||
#undef CARBON_PARSE_NODE_KIND
|
||||
|
||||
Reference in New Issue
Block a user