Fluent Syntax 0.9
Pre-release-
Flatten complex reference expressions. (#221)
Reference expressions which may take complex forms, such as a reference
to a message's attribute, or a parameterized reference to an attribute of
a term, are now stored in a simplified manner. Instead of nesting
multiple expression nodes (e.g.CallExpression
of an
AttributeExpression
of aTermReference
), all information is available
directly in the reference expression.This change affects the following AST nodes:
MessageReference
now has an optionalattribute
field,FunctionReference
now has a requiredarguments
field,TermReference
now has an optionalattribute
field and an optional
arguments
field.
-
Remove
VariantLists
. (#204)The
VariantLists
and theVariantExpression
syntax and AST nodes were
deprecated in Syntax 0.9 and have now been removed. -
Rename
StringLiteral.raw
tovalue
. (#243)StringLiteral.value
contains the exact contents of the string literal,
character-for-character. Escape sequences are stored verbatim without
processing.Implementations may decide how to process the raw value. When they do,
however, they must comply with the behavior specified inLiteral.parse
. -
Rename
args
toarguments
.The
args
field ofMessageReference
,TermReference
,
FunctionReference
, andAnnotation
has been renamed toarguments
.