@unified-latex/unified-latex-util-scan
TypeScript icon, indicating that this package has built-in type declarations

1.7.1 • Public • Published

unified-latex-util-scan

What is this?

Functions to analyze unified-latex Abstract Syntax Tree (AST).

When should I use this?

If you want to look for particular AST nodes in an array; useful when making plugins.

Install

npm install @unified-latex/unified-latex-util-scan

This package contains both esm and commonjs exports. To explicitly access the esm export, import the .js file. To explicitly access the commonjs export, import the .cjs file.

Functions

prefixMatch(nodes, prefixes, options)

Efficiently search for a large number of strings using a prefix-tree. The longest match is returned.

function prefixMatch(nodes: Ast.Node[], prefixes: string | string[] | { dump(spacer?: number): string; tree(): any; addWord(word: string): ...; removeWord(word: string): ...; isPrefix(word: string): boolean; countPrefix(word: string): number; ... 5 more ...; getSubAnagrams(word: string): string[]; }, options: { startIndex?: number; matchSubstrings?: boolean; assumeOneCharStrings?: boolean; }): { match: string; endNodeIndex: number; endNodePartialMatch: string | null; }

Parameters

Param Type
nodes Ast.Node[]
prefixes Omitted
options Omitted

scan(nodes, token, options)

Scan nodes looking for the first occurrence of token. If options.onlySkipWhitespaceAndComments==true, then the scan will only skip whitespace/comment nodes.

function scan(
  nodes: (Ast.Node | Ast.Argument)[],
  token: string | Ast.Node | Ast.Argument,
  options: {
    startIndex?: number;
    onlySkipWhitespaceAndComments?: boolean;
    allowSubstringMatches?: boolean;
  }
): number;

Parameters

Param Type
nodes (Ast.Node | Ast.Argument)[]
token Omitted
options Omitted

/@unified-latex/unified-latex-util-scan/

    Package Sidebar

    Install

    npm i @unified-latex/unified-latex-util-scan

    Weekly Downloads

    1,332

    Version

    1.7.1

    License

    MIT

    Unpacked Size

    29.7 kB

    Total Files

    7

    Last publish

    Collaborators

    • siefkenj