@eagleoutice/flowr - v2.15.8
    Preparing search index...

    Variable SourceLocation

    SourceLocation: {
        at<OtherInfo>(
            this: void,
            node: RNode<OtherInfo> | undefined,
        ): SourceLocationView | undefined;
        compare(
            this: void,
            loc1: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            loc2: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
        ): number;
        equals(
            this: void,
            loc1: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            loc2: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
        ): boolean;
        format(
            this: void,
            location:
                | [
                    startLine: number,
                    startColumn: number,
                    endLine: number,
                    endColumn: number,
                    f?: string,
                ]
                | undefined,
        ): string;
        from(
            this: void,
            range: SourceRange,
            file?: string,
        ): [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ];
        fromNode<OtherInfo>(
            this: void,
            node: RNode<OtherInfo> | undefined,
        ):
            | [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ]
            | undefined;
        getEnd: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            SourcePosition,
        >;
        getEndColumn: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            number,
        >;
        getEndLine: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            number,
        >;
        getFile(
            this: void,
            location:
                | [
                    startLine: number,
                    startColumn: number,
                    endLine: number,
                    endColumn: number,
                    f?: string,
                ]
                | undefined,
        ): string
        | undefined;
        getRange: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            SourceRange,
        >;
        getStart: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            SourcePosition,
        >;
        getStartColumn: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            number,
        >;
        getStartLine: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            number,
        >;
        invalid(
            this: void,
        ): [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ];
        isSubsetOf(
            this: void,
            loc1: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            loc2: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
        ): boolean;
        isValid: (
            this: void,
            range:
                | [
                    startLine: number,
                    startColumn: number,
                    endLine: number,
                    endColumn: number,
                    f?: (...)
                    | (...),
                ]
                | undefined,
        ) => range is [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ];
        mapFile(
            this: void,
            loc: [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            fileMapper: (file: string | undefined) => string,
        ): [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ];
        merge(
            this: void,
            locs: readonly (
                | [
                    startLine: number,
                    startColumn: number,
                    endLine: number,
                    endColumn: number,
                    f?: (...)
                    | (...),
                ]
                | undefined
            )[],
        ):
            | [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ]
            | undefined;
        name: "SourceLocation";
        view: Accessor<
            [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ],
            SourceLocationView,
        >;
    }

    Utility functions for source locations.

    As every SourceRange is a location without a file, the readers of SourceRange apply to locations as well; the ones re-exported here save you the detour via SourceLocation.getRange.

    Type Declaration

    • at: function
    • compare: function
      • Parameters

        • this: void
        • loc1: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]
        • loc2: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]

        Returns number

    • equals: function
      • Checks if two locations are equal, file included.

        Parameters

        • this: void
        • loc1: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]
        • loc2: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]

        Returns boolean

    • format: function
      • Formats a source location as a human-readable string.

        Parameters

        • this: void
        • location:
              | [
                  startLine: number,
                  startColumn: number,
                  endLine: number,
                  endColumn: number,
                  f?: string,
              ]
              | undefined

        Returns string

    • from: function
      • Creates a source location from a source range and a file name.

        Parameters

        Returns [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ]

    • fromNode: function
      • The source location of an AST node, file included.

        Type Parameters

        • OtherInfo

        Parameters

        Returns
            | [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ]
            | undefined

        undefined if the given range is undefined

    • ReadonlygetEnd: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          SourcePosition,
      >
    • ReadonlygetEndColumn: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          number,
      >
    • ReadonlygetEndLine: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          number,
      >
    • getFile: function
      • Returns the file part of a source location, or undefined if no file is set.

        Parameters

        • this: void
        • location:
              | [
                  startLine: number,
                  startColumn: number,
                  endLine: number,
                  endColumn: number,
                  f?: string,
              ]
              | undefined

        Returns string | undefined

    • ReadonlygetRange: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          SourceRange,
      >

      Returns the source range part of a source location, file excluded.

    • ReadonlygetStart: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          SourcePosition,
      >
    • ReadonlygetStartColumn: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          number,
      >
    • ReadonlygetStartLine: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          number,
      >
    • invalid: function
      • Returns an invalid source location (i.e., with an invalid range and no file).

        Parameters

        • this: void

        Returns [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ]

    • isSubsetOf: function
      • Checks if the first location is a subset of the second location. For this, they must be in the same file!

        Parameters

        • this: void
        • loc1: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]
        • loc2: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]

        Returns boolean

    • ReadonlyisValid: (
          this: void,
          range:
              | [
                  startLine: number,
                  startColumn: number,
                  endLine: number,
                  endColumn: number,
                  f?: (...)
                  | (...),
              ]
              | undefined,
      ) => range is [
          startLine: number,
          startColumn: number,
          endLine: number,
          endColumn: number,
          f?: string,
      ]
    • mapFile: function
      • Maps the file part of a source location using the given mapper function.

        Parameters

        • this: void
        • loc: [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ]
        • fileMapper: (file: string | undefined) => string

        Returns [
            startLine: number,
            startColumn: number,
            endLine: number,
            endColumn: number,
            f?: string,
        ]

    • merge: function
      • Merges multiple source locations into a single source location that spans from the earliest start to the latest end. If the locations are from different files, undefined is returned. Files may be undefined themselves, but if there is at least one defined file, they must all be the same defined file for the merge to succeed.

        Parameters

        • this: void
        • locs: readonly (
              | [
                  startLine: number,
                  startColumn: number,
                  endLine: number,
                  endColumn: number,
                  f?: (...)
                  | (...),
              ]
              | undefined
          )[]

        Returns
            | [
                startLine: number,
                startColumn: number,
                endLine: number,
                endColumn: number,
                f?: string,
            ]
            | undefined

    • Readonlyname: "SourceLocation"
    • Readonlyview: Accessor<
          [
              startLine: number,
              startColumn: number,
              endLine: number,
              endColumn: number,
              f?: string,
          ],
          SourceLocationView,
      >

      Wraps the location in a view offering property access (loc.startLine, loc.file) and methods. The view does not copy the tuple; see SourceLocationView for when to use it.

    location