@tikoci/centrs
    Preparing search index...

    Function describeStatement

    • Everything the boundary rule needs from one statement's text.

      Parameters

      • text: string

      Returns {
          directive: boolean;
          run: RunToken[];
          runEnds: (number | null)[];
          whole: boolean;
      }

      • directive: boolean
      • run: RunToken[]
      • runEnds: (number | null)[]

        For each run token, the offset in text just past the WORD it came from — where the arguments of a command whose verb is that token begin (#202c) — or null where that offset would not mean that.

        Per RUN TOKEN rather than one run-wide offset, because the run does not stop at the verb: runTokens consumes every leading bare word, so /interface print detail puts detail IN the run. Once the boundary rule has decided the verb, everything after it is by construction an argument — measured at 60% of the corpus's CRUD-verb commands, so ending the argument list at the run instead of at the verb would abstain on most of them.

        Null in two cases, both fail-closed:

        • the token is not the LAST part of its word (/ip/route/add/x splitting its verb mid-word): the following parts are neither path nor arguments of this reading;
        • the word walk stopped before reaching that token (the run and the words disagree), so no offset was established for it at all.

        A word END is the only offset that survives a \<newline> continuation — the joined bytes are interior to the word (see asciiWordSpans), which is why no per-token START is published.

      • whole: boolean