diff options
author | Martin Odersky <odersky@gmail.com> | 2017-02-08 21:10:58 +1100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2017-04-04 13:20:45 +0200 |
commit | fe14afb67ecfeef0c7d6bc6588a1ec1c04b21fb8 (patch) | |
tree | 0c236f39f0496553b988b329e10c44639220e7eb /docs | |
parent | ca039bae393a1d32720d6517baae434b91eefefd (diff) | |
download | dotty-fe14afb67ecfeef0c7d6bc6588a1ec1c04b21fb8.tar.gz dotty-fe14afb67ecfeef0c7d6bc6588a1ec1c04b21fb8.tar.bz2 dotty-fe14afb67ecfeef0c7d6bc6588a1ec1c04b21fb8.zip |
Simplify syntax
`enum' only allowed as a prefix of classes, dropped from traits and objects.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/docs/internals/syntax.md | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/docs/docs/internals/syntax.md b/docs/docs/internals/syntax.md index 804a0f57a..f89a0f490 100644 --- a/docs/docs/internals/syntax.md +++ b/docs/docs/internals/syntax.md @@ -330,15 +330,15 @@ DefDef ::= DefSig [‘:’ Type] ‘=’ Expr | ‘this’ DefParamClause DefParamClauses DefDef(_, <init>, Nil, vparamss, EmptyTree, expr | Block) (‘=’ ConstrExpr | [nl] ConstrBlock) -TmplDef ::= ([‘case’ | `enum'] ‘class’ | [`enum'] trait’) ClassDef - | [‘case’ | `enum'] ‘object’ ObjectDef +TmplDef ::= ([‘case’ | `enum'] ‘class’ | trait’) ClassDef + | [‘case’] ‘object’ ObjectDef | `enum' EnumDef ClassDef ::= id ClassConstr TemplateOpt ClassDef(mods, name, tparams, templ) ClassConstr ::= [ClsTypeParamClause] [ConstrMods] ClsParamClauses with DefDef(_, <init>, Nil, vparamss, EmptyTree, EmptyTree) as first stat ConstrMods ::= AccessModifier | Annotation {Annotation} (AccessModifier | ‘this’) ObjectDef ::= id TemplateOpt ModuleDef(mods, name, template) // no constructor -EnumDef ::= id ClassConstr [`extends' [ConstrApps]] EnumDef(mods, name, tparams, template) +EnumDef ::= id ClassConstr [`extends' [ConstrApps]] EnumDef(mods, name, tparams, template) [nl] ‘{’ EnumCaseStat {semi EnumCaseStat ‘}’ EnumCaseStat ::= {Annotation [nl]} {Modifier} EnumCase EnumCase ::= `case' (EnumClassDef | ObjectDef) |