Nondeterministic Palindrome Machine

    micromark-util-events-to-acorn
    TypeScript icon, indicating that this package has built-in type declarations

    1.1.0 • Public • Published

    micromark-util-events-to-acorn

    Build Coverage Downloads Size Sponsors Backers Chat

    micromark utility to try and parse events w/ acorn.

    Contents

    Install

    npm:

    npm install micromark-util-events-to-acorn

    Use

    import {eventsToAcorn} from 'micromark-util-events-to-acorn'
    
    // A factory that uses the utility:
    /** @type {Tokenizer} */
    function factoryMdxExpression(effects, ok, nok) {
      return start
    
      // …
    
      /** @type {State} */
      atClosingBrace(code) {
        // …
    
        // Gnostic mode: parse w/ acorn.
        const result = eventsToAcorn(
          self.events.slice(eventStart),
          acorn,
          acornOptions,
          {
            start: startPosition,
            expression: true,
            allowEmpty,
            prefix: spread ? '({' : '',
            suffix: spread ? '})' : ''
          }
        )
    
        // …
      }
    
      // …
    }

    API

    This module exports the following identifiers: eventsToAcorn. There is no default export.

    The export map supports the endorsed development condition. Run node --conditions development module.js to get instrumented dev code. Without this condition, production code is loaded.

    eventsToAcorn(events, options)

    Parameters
    • events (Array<Event>) — Events
    • options.acorn (Acorn, required) — Object with acorn.parse and acorn.parseExpressionAt
    • options.acornOptions (AcornOptions) — Configuration for acorn
    • options.start (Point, optional) — Place where events start
    • options.prefix (string, default: '') — Text to place before events
    • options.suffix (string, default: '') — Text to place after events
    • options.expression (boolean, default: false) — Whether this is a program or expression
    • options.allowEmpty (boolean, default: false) — Whether an empty expression is allowed (programs are always allowed to be empty).
    Returns
    • estree (Program?) — Estree node
    • error (Error?) — Error if unparseable
    • swallow (boolean) — Whether the error, if there is one, can be swallowed and more JavaScript could be valid.

    Security

    See security.md in micromark/.github for how to submit a security report.

    Contribute

    See contributing.md in micromark/.github for ways to get started. See support.md for ways to get help.

    This project has a code of conduct. By interacting with this repository, organisation, or community you agree to abide by its terms.

    License

    MIT © Titus Wormer

    Install

    npm i micromark-util-events-to-acorn

    DownloadsWeekly Downloads

    236,658

    Version

    1.1.0

    License

    MIT

    Unpacked Size

    26.3 kB

    Total Files

    6

    Last publish

    Collaborators

    • wooorm