@@ -98,7 +98,8 @@ string support defined in :rfc:`7405`.
98
98
.. rubric :: Whitespace
99
99
100
100
.. productionlist :: smithy
101
- WS :1*(`SP ` / `NL ` / `Comment ` / ",") ; whitespace
101
+ WS :1*(`SP ` / `NL ` / `Comment ` / `Comma `) ; whitespace
102
+ Comma:","
102
103
SP :1*(%x20 / %x09) ; one or more spaces or tabs
103
104
NL :%x0A / %x0D.0A ; Newline: \n and \r\n
104
105
NotNL:%x09 / %x20-10FFFF ; Any character except newline
@@ -129,7 +130,7 @@ string support defined in :rfc:`7405`.
129
130
NodeValue :`NodeArray `
130
131
:/ `NodeObject `
131
132
:/ `Number `
132
- :/ `NodeKeywords `
133
+ :/ `NodeKeyword `
133
134
:/ `NodeStringValue `
134
135
NodeArray :"[" [`WS `] *(`NodeValue` [`WS`]) "]"
135
136
NodeObject :"{" [`WS`] [`NodeObjectKvp` *(`WS` `NodeObjectKvp`)] [`WS`] "}"
@@ -145,7 +146,7 @@ string support defined in :rfc:`7405`.
145
146
Minus :%x2D ; -
146
147
Plus :%x2B ; +
147
148
Zero :%x30 ; 0
148
- NodeKeywords :%s"true" / %s"false" / %s"null"
149
+ NodeKeyword :%s"true" / %s"false" / %s"null"
149
150
NodeStringValue :`ShapeId` / `TextBlock` / `QuotedText`
150
151
QuotedText :DQUOTE *`QuotedChar` DQUOTE
151
152
QuotedChar :%x09 ; tab
@@ -175,7 +176,7 @@ string support defined in :rfc:`7405`.
175
176
ShapeOrApplyStatement :`ShapeStatement` / `ApplyStatement`
176
177
ShapeStatement :`TraitStatements` `ShapeBody`
177
178
ShapeBody :`SimpleShapeStatement`
178
- :/ `EnumShapeStatement `
179
+ :/ `EnumStatement `
179
180
:/ `ListStatement`
180
181
:/ `MapStatement`
181
182
:/ `StructureStatement`
@@ -188,11 +189,11 @@ string support defined in :rfc:`7405`.
188
189
:/ %s"byte" / %s"short" / %s"integer" / %s"long"
189
190
:/ %s"float" / %s"double" / %s"bigInteger"
190
191
:/ %s"bigDecimal" / %s"timestamp"
191
- Mixins :[`SP`] %s"with" [`WS`] "[" 1*( [`WS`] `ShapeId`) [`WS`] "]"
192
- EnumShapeStatement :`EnumTypeName` `SP` `Identifier` [`Mixins`] [`WS`] `EnumShapeMembers`
192
+ Mixins :[`SP`] %s"with" [`WS`] "[" [`WS`] 1*( `ShapeId` [`WS`]) "]"
193
+ EnumStatement :`EnumTypeName` `SP` `Identifier` [`Mixins`] [`WS`] `EnumShapeMembers`
193
194
EnumTypeName :%s"enum" / %s"intEnum"
194
195
EnumShapeMembers :"{" [`WS`] 1*(`TraitStatements` `Identifier` [`ValueAssignment`] [`WS`]) "}"
195
- ValueAssignment :[`SP`] "=" [`SP`] `NodeValue` `BR`
196
+ ValueAssignment :[`SP`] "=" [`SP`] `NodeValue` [`SP`] [`Comma`] `BR`
196
197
ListStatement :%s"list" `SP` `Identifier` [`Mixins`] [`WS`] `ListMembers`
197
198
ListMembers :"{" [`WS`] [`ListMember`] [`WS`] "}"
198
199
ListMember :`TraitStatements` (`ElidedListMember` / `ExplicitListMember`)
@@ -223,9 +224,9 @@ string support defined in :rfc:`7405`.
223
224
: *(`OperationInput` / `OperationOutput` / `OperationErrors`)
224
225
: [`WS`] "}"
225
226
: ; only one of each property can be specified.
226
- OperationInput :%s"input" [`WS`] (`InlineStructure` / (":" [`WS`] `ShapeId`)) `WS`
227
- OperationOutput :%s"output" [`WS`] (`InlineStructure` / (":" [`WS`] `ShapeId`)) `WS`
228
- OperationErrors :%s"errors" [`WS`] ":" [`WS`] "[" *( [`WS`] `Identifier`) [`WS`] "]" `WS`
227
+ OperationInput :%s"input" [`WS`] (`InlineStructure` / (":" [`WS`] `ShapeId`))
228
+ OperationOutput :%s"output" [`WS`] (`InlineStructure` / (":" [`WS`] `ShapeId`))
229
+ OperationErrors :%s"errors" [`WS`] ":" [`WS`] "[" [`WS`] *(`ShapeId` [`WS`]) "]"
229
230
InlineStructure :":=" [`WS`] `TraitStatements` [`StructureResource`]
230
231
: [`Mixins`] [`WS`] `StructureMembers`
231
232
@@ -784,7 +785,7 @@ The following example defines an ``integer`` shape with a :ref:`range-trait`:
784
785
Enum shapes
785
786
-----------
786
787
787
- The :ref: `enum ` shape is defined using an :token: `smithy:EnumShapeStatement `.
788
+ The :ref: `enum ` shape is defined using an :token: `smithy:EnumStatement `.
788
789
789
790
The following example defines an :ref: `enum ` shape:
790
791
@@ -847,7 +848,7 @@ IntEnum shapes
847
848
--------------
848
849
849
850
The :ref: `intEnum ` shape is defined using an
850
- :token: `smithy:EnumShapeStatement `.
851
+ :token: `smithy:EnumStatement `.
851
852
852
853
.. note ::
853
854
The :ref: `enumValue trait <enumValue-trait >` is required on all
0 commit comments