Directive has any property key. e.g. default sets default value of field or query, name is used custom reference, example defines mocking values.
Property key block is not allowed. name property key is always allowed.
directive
property key
field
default, example, enum
endpoint.query
default (with required annotation only), example, enum
endpoint.parameter
enum
Property key has end at line-break or end of the string.
Comment and Description
Comment starts with a # and continues until end of line. It's ignore from soil Parser.
Similarly description starts with a : and continues until end of line. It's exporting on soil generated codes. Description writes before the directive.
- This is a comment.
# The user entity for Sample Service API
#
# more description
entity User {
field name: String
}
Command
command block only contains commands and comments.
Problem
51
52
50
Update
Remove
(
)
from command code.before:
@set-var(<variable>, <value>)
after:
@set-var <variable>, <value>
But I want to support before case.
Directive rules
Each block has allowed annotation and directive list, a directive end at
<block-open>
token or another allowed annotation or directive.e.g.
Property keys
Directive has any property key. e.g.
default
sets default value offield
orquery
,name
is used custom reference,example
defines mocking values.Property key block is not allowed.
name
property key is always allowed.field
default
,example
,enum
endpoint.query
default
(withrequired
annotation only),example
,enum
endpoint.parameter
enum
Property key has end at line-break or end of the string.
Comment and Description
Comment starts with a
#
and continues until end of line. It's ignore from soil Parser.Similarly description starts with a
:
and continues until end of line. It's exporting on soil generated codes. Description writes before the directive.Command
command block only contains commands and comments.
Split each argument by
,
.In
scenario
directive, can use special@request
command shorthand: