static   class   RonParser

Parser for ron documents

static   TokenListParser<RonTokenKind RonElement> Identifier

Identifier = identifier | rawIdentifier;

static   TokenListParser<RonTokenKind RonElement> Value

Value = Option | Tuple | Struct | Map | Primitive

static   TokenListParser<RonTokenKind RonElement> Some

Some = 'Some' '(' Value ')';

static   TokenListParser<RonTokenKind RonElement> None

None = 'None';

static   TokenListParser<RonTokenKind RonElement> Option

Option = Some | None;

static   TokenListParser<RonTokenKind IEnumerable<RonElement>> ValueSet

ValueSet = Value { Value ',' } [',']

static   TokenListParser<RonTokenKind RonElement> NamedValue

NamedValue = Identifier ':' Value

static   TokenListParser<RonTokenKind IEnumerable<RonElement>> NamedValueSet

NamedValueSet = NamedValue { ',' NamedValue } [',']

static   TokenListParser<RonTokenKind RonElement> MapItem

MapItem = Value ':' Value;

static   TokenListParser<RonTokenKind IEnumerable<RonElement>> MapItemSet

MapItemSet = { MapItem } [','];

static   TokenListParser<RonTokenKind RonElement> Map

RonMap

static   TokenListParser<RonTokenKind RonElement> List

RonList

static   TokenListParser<RonTokenKind RonElement> Tuple

Tuple = '(' [ValueSet] ')';

static   TokenListParser<RonTokenKind RonElement> TupleStruct

TupleStruct = Identifier Tuple;

static   TokenListParser<RonTokenKind RonElement> NameFieldStruct

NamedFieldStruct = Identifier '(' [NamedValueSet] ')';

static   TokenListParser<RonTokenKind RonElement> MapStruct

Summary MapStruct = Identifier Map

static   TokenListParser<RonTokenKind RonElement> UnitStruct

UnitStruct = Identifier;

static   TokenListParser<RonTokenKind RonElement> Struct

Struct = TupleStruct | NamedFieldStruct | UnitStruct;

static   TokenListParser<RonTokenKind RonElement> Boolean

Boolean = 'true' | 'false';

static   TokenListParser<RonTokenKind RonElement> Number

Number = Integer;

static   TokenListParser<RonTokenKind RonRangeOperator> RangeOperatorExclusive

Ron range operator

static   TokenListParser<RonTokenKind RonRangeOperator> RangeOperator

RangeOperator = '..' | '..=';

static   TokenListParser<RonTokenKind RonElement> RangeBinary

RangeBinary = Number RangeOperator Number;

static   TokenListParser<RonTokenKind RonElement> RangeFrom

RangeFrom = Number '..';

static   TokenListParser<RonTokenKind RonElement> RangeTo

RangeTo = RangeOperator Number;

static   TokenListParser<RonTokenKind RonElement> RangeFull

RangeFull = '..';

static   TokenListParser<RonTokenKind RonElement> Range

Range = RangeBinary | RangeFrom | RangeTo | RangeFull;

static   TokenListParser<RonTokenKind RonElement> String

String parser

static   TokenListParser<RonTokenKind RonElement> Char

Character parser

static   TokenListParser<RonTokenKind RonElement> Primitive

Primitive = Boolean;

static   TokenListParser<RonTokenKind RonElement> Ron

Ron = Extensions Value;