Kokopu - v4.12.1
    Preparing search index...

    Class NodeAbstract

    Represent one move in the tree structure formed by a chess game with multiple variations.

    Hierarchy (View Summary)

    Index

    Methods

    • Add the given NAG to the current node or variation.

      Parameters

      • nag: number

      Returns void

    • Create a new variation that can be played instead of the current move.

      Parameters

      • OptionalisLongVariation: boolean

        false by default.

      Returns Variation

    • Remove all the NAGs from the current node or variation.

      Returns void

    • Get the text comment (if any) associated to the current node or variation.

      Returns undefined | string

    • Set the text comment associated to the current node or variation.

      Parameters

      • value: undefined | string

        If undefined, the existing value (if any) is erased.

      • OptionalisLongComment: boolean

        false by default.

      Returns void

    • FEN representation of the chess position after the current move.

      The fifty-move clock and full-move number are set according to the underlying game in the string returned by this method.

      Returns string

    • Number of half-moves since the last pawn move or capture, after the current move.

      Returns number

    • SAN-like representation of the move associated to the current node (or '--' for a null-move).

      Here, chess pieces are represented with their respective unicode character, instead of the first letter of their English name.

      Returns string

    • Remove from the the current node or variation the NAGs for which the given filter evaluates to false (and keep those for which it evaluates to true).

      Parameters

      • filter: (nag: number) => boolean

      Returns void

    • Remove from the the current node or variation the key-value tag pairs for which the given filter evaluates to false (and keep those for which it evaluates to true).

      Parameters

      • filter: (tagKey: string, tagValue: string) => boolean

      Returns void

      AbstractNode.tags for more details on tags.

    • Full-move number. It starts at 1 (by default), and is incremented after each black move.

      Returns number

    • Check whether the current node or variation has the given NAG or not.

      Parameters

      • nag: number

      Returns boolean

    • Identifier of the current Node or Variation within its parent Game.

      WARNING: the ID may change when variations are modified (added, removed, swapped, promoted...) among the parents the current node.

      Returns string

    • Whether the text comment associated to the current node or variation is long or short.

      Returns boolean

      false if no comment is defined.

    • Returns boolean

      Use obj instanceof Variation instead.

    • Color of the player who plays the current move.

      Returns Color

    • NAGs associated to the current node or variation.

      Returns number[]

      array sorted in increasing order.

    • Return the Node that comes after the current one in their parent variation.

      Returns undefined | Node

      undefined if the current node is the last one of the variation.

    • SAN representation of the move associated to the current node (or '--' for a null-move).

      Returns string

    • Create a new node representing the given move, and append it to the current node or variation.

      If there are some pre-existing subsequent nodes, they are all erased.

      Parameters

      • move: string

        SAN representation of the move, or '--' for a null-move.

      Returns Node

      The newly created Node.

      exception.InvalidNotation if the move notation cannot be parsed, or if the parsed move would correspond to an illegal move.

    • Chess position obtained after the current move.

      Returns Position

    • Chess position before the current move.

      Returns Position

    • Return the Node that comes before the current one in their parent variation.

      Returns undefined | Node

      undefined if the current node is the first one of the variation.

    • Replace the move on the current node (and the following ones, if any) by the moves of the variation corresponding to the given index, and create a new variation with the move on the current node and its successors.

      WARNING: the promoted variation must NOT be empty (otherwise an exception is thrown).

      Parameters

      • variationIndex: number

        Index of the variation to promote (must be such that 0 <= variationIndex < thisNode.variations().length).

      Returns void

    • Erase all the moves after the one on the current Node: after that, Node.next returns undefined.

      If the current Node is already the last one in its variation (i.e. if Node.next returns undefined already), nothing happens.

      Returns void

    • Remove the given NAG from the current node or variation.

      Parameters

      • nag: number

      Returns void

    • Remove the variation corresponding to the given index.

      Parameters

      • variationIndex: number

        Index of the variation to remove (must be such that 0 <= variationIndex < thisNode.variations().length).

      Returns void

    • Change the order of the variations by swapping the two variations corresponding to the given indexes.

      Parameters

      • variationIndex1: number

        Index of one variation to swap (must be such that 0 <= variationIndex1 < thisNode.variations().length).

      • variationIndex2: number

        Index of the other variation to swap (must be such that 0 <= variationIndex2 < thisNode.variations().length).

      Returns void

    • Get the value associated to the given tag key on the current node or variation.

      Parameters

      • tagKey: string

      Returns undefined | string

      AbstractNode.tags for more details on tags.

    • Set the value associated to the given tag key on the current node or variation.

      Parameters

      • tagKey: string
      • value: undefined | string

        If undefined, the existing value (if any) is erased.

      Returns void

      AbstractNode.tags for more details on tags.

    • Return the keys of the tags associated to the current node or variation.

      The tag mechanism is a key-value associative container allowing to store some arbitrary data on each node or variation. In PGN, the tags are represented as [%tagKey tagValue] strings appended to text comments.

      The tag keys must be non-empty, and can contain only alphanumeric or underscore characters.

      Returns string[]

      array sorted in increasing order.

    • Alternative variations that can be followed instead of the current move.

      Returns Variation[]