Interface NamespaceStmtCtx

All Superinterfaces:
CommonStmtCtx
All Known Subinterfaces:
EffectiveStmtCtx.Current<A,D>, EffectiveStmtCtx.UndeclaredCurrent<A,D>, RootStmtContext<A,D,E>, RootStmtContext.Mutable<A,D,E>, StmtContext<A,D,E>, StmtContext.Mutable<A,D,E>

@Beta public interface NamespaceStmtCtx extends CommonStmtCtx
Support work with namespace content.
  • Method Details

    • namespace

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

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

      <K, V> @Nullable Map<K,V> localNamespacePortion(@NonNull ParserNamespace<K,V> namespace)
      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(ParserNamespace).

      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
      Parameters:
      namespace - namespace type class
      Returns:
      Namespace portion stored in this node, if available