org.virtuslab.yaml.internal.load.parse

Members list

Type members

Classlikes

final class Anchor(val anchor: String) extends AnyVal

Attributes

Companion
object
Source
Event.scala
Supertypes
class AnyVal
trait Matchable
class Any
object Anchor

Attributes

Companion
class
Source
Event.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Anchor.type
final case class Event(kind: EventKind, pos: Option[Range])

Valid sequence of events should obey following grammar stream ::= STREAM-START document* STREAM-END document ::= DOCUMENT-START node DOCUMENT-END node ::= ALIAS | SCALAR | sequence | mapping sequence ::= SEQUENCE-START node* SEQUENCE-END mapping ::= MAPPING-START (node node)* MAPPING-END

Valid sequence of events should obey following grammar stream ::= STREAM-START document* STREAM-END document ::= DOCUMENT-START node DOCUMENT-END node ::= ALIAS | SCALAR | sequence | mapping sequence ::= SEQUENCE-START node* SEQUENCE-END mapping ::= MAPPING-START (node node)* MAPPING-END

Attributes

Companion
object
Source
Event.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Event

Attributes

Companion
class
Source
Event.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Event.type
sealed abstract class EventKind

Attributes

Companion
object
Source
Event.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Alias
class DocumentEnd
object MappingEnd.type
class MappingStart
class Scalar
object SequenceEnd.type
object StreamEnd.type
object StreamStart.type
Show all
object EventKind

Attributes

Companion
class
Source
Event.scala
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
EventKind.type
final case class NodeEventMetadata(anchor: Option[Anchor], tag: Option[Tag])

Carries additional information about event which represents YAML node (scalar, start of mapping or sequence). This could be:

Carries additional information about event which represents YAML node (scalar, start of mapping or sequence). This could be:

  • anchor
  • tags (not yet supported)

Attributes

Companion
object
Source
Event.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
Event.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
trait Parser

Attributes

Source
Parser.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class ParserImpl
final class ParserImpl extends Parser

Parser takes a stream of Tokens and produces a series of serialization Events. Parsing can fail due to ill-formed input.

Parser takes a stream of Tokens and produces a series of serialization Events. Parsing can fail due to ill-formed input.

ParserImpl is using following productions:

ParseStreamStart ::= (stream_start) ParseDocumentStart ParseDocumentStartOpt ParseStreamEnd ParseStreamEnd ::= (stream_end)

ParseDocumentStart ::= (document_start) ParseNode ParseDocumentEnd ParseDocumentEnd ::= (document_end) ParseDocumentStartOpt ::= epsilon | ParseDocumentStart ParseDocumentStartOpt

ParseNode(indentLess=false) ::= ParseMappingStart | ParseFlowMappingStart | ParseSequenceStart(indentLess) | ParseFlowSeqStart | ParseScalar ParseScalar ::= scalar

ParseMappingStart ::= mapping_start ParseMappingEntry ParseMappingEnd ParseMappingEnd ::= mapping_end ParseMappingEntry ::= mapping_key ParseScalar ParseMappingValue ParseMappingEntryOpt ParseMappingValue ::= mapping_value ParseNode(true) ParseMappingEntryOpt ::= epsilon | ParseMappingEntry

ParseSequenceStart(indentLess)::= (seq_start) ParseSequenceEntry ParseSequenceEnd(indentLess) ParseSequenceEnd(indentLess) ::= (seq_end) ParseSequenceEntry ::= seq_value ParseNode ParseSequenceEntryOpt ParseSequenceEntryOpt ::= epsilon | ParseSequenceEntry

ParseFlowNode ::= ParseFlowMappingStart | ParseFlowSeqStart | ParseScalar

ParseFlowMappingStart ::= flow_mapping_start ParseFlowMappingEntryOpt ParseFlowMappingEnd ParseFlowMappingEnd ::= flow_mapping_end ParseFlowMappingEntry ::= mapping_key ParseScalar ParseMappingValue ParseFlowMappingEntryOpt ::= epsilon | ParseFlowMappingEntry ParseFlowMappingComma ::= epsilon | comma ParseFlowMappingEntryOpt

ParseFlowSeqStart ::= flow_seq_start ParseFlowSeqEntryOpt ParseFlowSeqEnd ParseFlowSeqEnd ::= flow_seq_end ParseFlowSeqEntry ::= (ParseFlowNode | ParseFlowPairKey) ParseFlowSeqComma ParseFlowSeqEntryOpt ::= epsilon | ParseFlowSeqEntry ParseFlowSeqComma ::= epsilon | comma ParseFlowSeqEntryOpt

ParseFlowPairKey ::= mapping_key ParseFlowNode ParseFlowPairValue ParseFlowPairValue ::= mapping_value ParseFlowNode

Attributes

Companion
object
Source
ParserImpl.scala
Supertypes
trait Parser
class Object
trait Matchable
class Any
object ParserImpl

Attributes

Companion
class
Source
ParserImpl.scala
Supertypes
class Object
trait Matchable
class Any
Self type
ParserImpl.type