Skip to content

v0.5.0

Compare
Choose a tag to compare
@z7zmey z7zmey released this 07 Jun 17:35
· 368 commits to master since this release
9f0d4b0

Enhancements:

  • Error-tolerant parsing
  • Possibility to parse files concurrently
  • Saving all comments
  • Saving comments position

Breaking changes:

  • Removed DocComment and PlainComment types
  • Removed boolWithToken, altSintaxNode, nodesWithEndToken types
  • Created node.Root, node.ArgumentList, stmt.TraitAdaptationList, stmt.CaseList, stmt.ClassExtends, stmt.ClassImplements, stmt.InterfaceExtends, expr.Reference nodes
  • Changed ClosureUse node purpose, now it represents variables list instead of wrapping the variable
  • Builder was renamed to PositionBuilder
  • scanner.CreateToken returns pointer
  • scanner.Token saves position as position.Position
  • Parser interface moved to parser package
  • token package merged into scanner package
  • Positions and Comments moved into parser package

Fixes:

  • scanner: added (binary) cast
  • #28 fixed race conditions
  • #18 heredocLabel variable moved from global into scanner.Lexer
  • fixed panic on 32-bit systems
  • fixed bug when scanning an empty inline comment
  • fixed namespace resolver fail on anonymous class
  • fixed the saving non-latin comments

Optimisations:

  • #21 refactored scanner.Lexer.charsToBytes and renamed to scanner.Lexer.tokenString