クラス JSONPathNode<S extends JSONStructure, T>

java.lang.Object
io.github.takenoko4096.json.JSONPathNode<S,T>
型パラメータ:
S - 親となるjson構造
T - 子アクセス
直系の既知のサブクラス:
JSONPathNode.ArrayIndexFinderNode, JSONPathNode.ArrayIndexNode, JSONPathNode.ObjectKeyCheckerNode, JSONPathNode.ObjectKeyNode

@NullMarked public abstract class JSONPathNode<S extends JSONStructure, T> extends Object
jsonパスを構成する各ノードを表現します。
  • ネストされたクラスの概要

    ネストされたクラス
    修飾子とタイプ
    クラス
    説明
    static final class 
    配列内において条件を満たす最初の要素への探索アクセスを表現するノード。
    static final class 
    配列の添え字に対する単純なアクセスを表現するノード。
    static final class 
    オブジェクトが紐づけられたキーに対する条件付きアクセスを表現するノード。
    static final class 
    オブジェクトのキーに対する単純なアクセスを表現するノード。
  • フィールドの概要

    フィールド
    修飾子とタイプ
    フィールド
    説明
    protected @Nullable JSONPathNode<?,?>
    子ノード。
    protected final T
    子アクセスのためのキーまたは添え字。
  • コンストラクタの概要

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    JSONPathNode(T parameter, @Nullable JSONPathNode<?,?> child)
    サブクラスのためのコンストラクタ。
  • メソッドの概要

    修飾子とタイプ
    メソッド
    説明
    abstract <U> @Nullable U
    access(S structure, JSONLocationAccessProvider<S,U> function)
    第一引数に渡された構造体そのまま、及びこのノードに対応する位置にアクセスするためのキーとなる値の2つを引数に取るラムダを受け取ります。
    abstract JSONPathNode<S,T>
    ノードのコピーを作成します。
    abstract String
     

    クラスから継承されたメソッド Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • フィールド詳細

    • parameter

      protected final T parameter
      子アクセスのためのキーまたは添え字。
    • child

      protected @Nullable JSONPathNode<?,?> child
      子ノード。
  • コンストラクタの詳細

    • JSONPathNode

      protected JSONPathNode(T parameter, @Nullable JSONPathNode<?,?> child)
      サブクラスのためのコンストラクタ。
      パラメータ:
      parameter - 子アクセスのためのキーまたは添え字。
      child - 子ノード。
  • メソッドの詳細

    • access

      public abstract <U> @Nullable U access(S structure, JSONLocationAccessProvider<S,U> function) throws JSONPathUnableToAccessException
      第一引数に渡された構造体そのまま、及びこのノードに対応する位置にアクセスするためのキーとなる値の2つを引数に取るラムダを受け取ります。各サブクラスにてチェックや検索等その他の処理が事前に行われることがあります。
      型パラメータ:
      U - コールバックの戻り値の型
      パラメータ:
      structure - 任意の構造体。
      function - コールバック。
      戻り値:
      コールバックの戻り値そのまま。
      例外:
      JSONPathUnableToAccessException - 構造との不整合によりアクセスできなかった場合。
    • copy

      public abstract JSONPathNode<S,T> copy()
      ノードのコピーを作成します。
      戻り値:
      ノードのディープコピー。
    • toString

      public abstract String toString()
      オーバーライド:
      toString クラス内 Object