Skip to content

m2-syn 0.4.0

Choose a tag to compare

@AlexanderGolys AlexanderGolys released this 29 Aug 04:44
· 13 commits to master since this release

This release replaces the flat generated CST schema with explicit nested
strutuct! declarations and substantially expands semantic visitor dispatch.

Highlights:

  • Adds semantic operator, assignment, lambda, member-access, indexing, control,
    and related specialization families.
  • Keeps Delimited, Punctuated, and ordinary vectors as transparent storage;
    delimiter boundaries are presented explicitly as Delimiter leaves.
  • Adds CellTokenStream, CellTokenTree, and CellTokenGroup for framed parser
    tokens while retaining the common lexical token atoms.
  • Treats adjacency as a binary operator and adds explicit augmented operators.
  • Canonicalizes Token! punctuation across quoted fragments and arbitrary Rust
    token spacing.
  • Adds the ProcMacro interface and LiteralReturnTypes transformation example.

Breaking migration:

  • Replace PunctPair<L, P, R> with SeparatedPair<T, P>.
  • Do not construct Punctuated for singleton values; it now requires a real
    separator.
  • Update generated-node matches, visitors, folds, and constructors to the new
    nested semantic categories.
  • Consume framed cells through CellTokenStream and CellTokenTree, projecting
    through to_token_stream or into_token_stream when lexical tokens are
    required.

See CHANGELOG.md for the complete release notes.