Class UnsupportedNode<N extends UnsupportedNode<N>>

    • Method Detail

      • copy

        public N copy()
        Description copied from interface: Element
        Returns a deep copy of this element, including copies of any nodes or marks that it contains. The copy will not necessarily be in exactly the same state as the original in some cases. For example, a text node that is used inside a codeBlock will have the ability to use marks on it disabled, but a copy made of the text node using this method will not similarly disallow marks unless it is also added to a content node with those same restrictions.

        Implementations notes:

        • Implementations should narrow the return type.
        • Implementations should return this if the element is immutable. The @Immutable annotation should be used on the class to offer additional confirmation of this intent.
        • Implementations should return parse(toMap()) if they have state.
        • While there may be cases where it is worthwhile to do something more efficient than the conversion to a map and back, this is discouraged because it would add yet another fragile piece of code that breaks when new data is added to the node. The parse and toMap methods already have to be updated in these circumstances, so it makes sense to take advantage of that.
        Specified by:
        copy in interface Element
        Specified by:
        copy in interface Node
        Specified by:
        copy in class UnsupportedElement
        Returns:
        a copy of this element, or this if the element is immutable anyway
      • toPlainText

        public String toPlainText()
        Description copied from interface: Node
        Renders this node as plain-text suitable for viewing by end users. Note that this is distinct from the more informative toString() value, which is meant for debugging and logging, only.
        Specified by:
        toPlainText in interface Node
      • appendPlainText

        public void appendPlainText​(StringBuilder sb)
        Description copied from interface: Node
        Renders this node as plain-text suitable for viewing by end users. This is equivalent to calling Node.toPlainText() and appending the result to the given buffer, except that it may be slightly more efficient, since it will write directly to the existing buffer instead of using a temporary buffer and having to make a copy of the result.
        Specified by:
        appendPlainText in interface Node
        Parameters:
        sb - where to write the result
      • appendPlainTextForUnsupportedNode

        public static void appendPlainTextForUnsupportedNode​(Node node,
                                                             StringBuilder sb)
      • plainTextFallback

        public static String plainTextFallback​(Node node)