Skip to content

Trivia ownership documentation seems to be incorrect #58332

Open
@T3sT3ro

Description

@T3sT3ro

Acknowledgement

  • I acknowledge that issues using this template may be closed without further explanation at the maintainer's discretion.

Comment

Referencing the #1678 issue and the ast-trivia: trivia ownership in the typescript-book, there seems to be an error in explanation:

in the issue @mhegazy mentions:

one thing that is different from the Roslyn notion of trivia, is we do not have trailing trivia. all triva in TypeScript is leading. so for instance [...]

in the same issue and in the wiki book however the following info is given:

In General:

  • A token owns any trivia after it on the same line upto the next token.
  • Any comment after that line is associated with the following token.

So from the first cite I understand as if token owns any trivia before it up to the previous token ([trivia of A][token A]... that's why end-of-file token is always present) which seems to be the correct explanation, while the second cite describes that a token owns the trivia after it up to next token in the same line, which would mean that A has trailing trivia, thus not true in TS — albeit true for Roslyn.

[token A][trivia owned by A]<nl>
[trivia owned by B]
[token B]

Unless there is some misconception of what "owned" trivia means, but imo the second cite is incorrect.

Metadata

Metadata

Assignees

No one assigned

    Labels

    DocsThe issue relates to how you learn TypeScript

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions