Class Composer


  • public class Composer
    extends Object
    Creates a node graph from parser events.

    Corresponds to the 'Compose' step as described in chapter 3.1 of the YAML Specification.

    • Field Detail

      • parser

        protected final Parser parser
        its parser
    • Constructor Detail

      • Composer

        public Composer​(Parser parser,
                        Resolver resolver,
                        LoaderOptions loadingConfig)
        Create
        Parameters:
        parser - - the parser
        resolver - - the resolver
        loadingConfig - - options
    • Method Detail

      • checkNode

        public boolean checkNode()
        Checks if further documents are available.
        Returns:
        true if there is at least one more document.
      • getNode

        public Node getNode()
        Reads and composes the next document.
        Returns:
        The root node of the document or null if no more documents are available.
      • getSingleNode

        public Node getSingleNode()
        Reads a document from a source that contains only one document.

        If the stream contains more than one document an exception is thrown.

        Returns:
        The root node of the document or null if no document is available.
      • composeSequenceNode

        protected Node composeSequenceNode​(String anchor)
      • composeMappingNode

        protected Node composeMappingNode​(String anchor)
      • composeMappingChildren

        protected void composeMappingChildren​(List<NodeTuple> children,
                                              MappingNode node)
        Compose the members of mapping
        Parameters:
        children - - the data to fill
        node - - the source
      • composeKeyNode

        protected Node composeKeyNode​(MappingNode node)
        To be able to override composeNode(node) which is a key
        Parameters:
        node - - the source
        Returns:
        node
      • composeValueNode

        protected Node composeValueNode​(MappingNode node)
        To be able to override composeNode(node) which is a value
        Parameters:
        node - - the source
        Returns:
        node