Interface NamespaceStmtCtx

    • Method Detail

      • namespace

        <K,​V,​N extends ParserNamespace<K,​V>> @Nullable Map<K,​V> namespace​(Class<@NonNull N> nsType)
        Return the selected namespace.
        Type Parameters:
        K - namespace key type
        V - namespace value type
        N - namespace type
        Parameters:
        nsType - namespace type class
        Returns:
        Namespace contents, if available
      • namespaceItem

        <K,​V,​T extends K,​N extends ParserNamespace<K,​V>> @Nullable V namespaceItem​(Class<@NonNull N> nsType,
                                                                                                           T key)
        Return a value associated with specified key within a namespace.
        Type Parameters:
        K - namespace key type
        V - namespace value type
        N - namespace type
        T - key type
        Parameters:
        nsType - Namespace type
        key - Key
        Returns:
        Value, or null if there is no element
        Throws:
        NamespaceNotAvailableException - when the namespace is not available.
      • localNamespacePortion

        <K,​V,​N extends ParserNamespace<K,​V>> @Nullable Map<K,​V> localNamespacePortion​(Class<@NonNull N> nsType)
        Return the portion of specified namespace stored in this node. Depending on namespace behaviour this may or may not represent the complete contents of the namespace as available via namespace(Class).

        This partial view is useful when the need is not to perform a proper namespace lookup, but rather act on current statement's contribution to the namespace.

        Type Parameters:
        K - namespace key type
        V - namespace value type
        N - namespace type
        Parameters:
        nsType - namespace type class
        Returns:
        Namespace portion stored in this node, if available
      • getAllFromNamespace

        default <K,​V,​N extends ParserNamespace<K,​V>> Map<K,​V> getAllFromNamespace​(Class<N> nsType)
        Return the selected namespace.
        Type Parameters:
        K - namespace key type
        V - namespace value type
        N - namespace type
        Parameters:
        nsType - namespace type class
        Returns:
        Namespace contents, if available
      • getFromNamespace

        default <K,​V,​T extends K,​N extends ParserNamespace<K,​V>> @Nullable V getFromNamespace​(Class<@NonNull N> type,
                                                                                                                      T key)
        Return a value associated with specified key within a namespace.
        Type Parameters:
        K - namespace key type
        V - namespace value type
        N - namespace type
        T - key type
        Parameters:
        type - Namespace type
        key - Key
        Returns:
        Value, or null if there is no element
        Throws:
        NamespaceNotAvailableException - when the namespace is not available.