Skip to content

Lazarus ObjectPascalParserExample v0.1

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 15 Jan 16:21
· 1 commit to main since this release

[0.1] - 2024-01-15

Bug Fixes

  • Using TStream.Read, which is supported
  • Correct Stream Position after BOM test
  • Correct stream position if BOM or not
  • Can't use cast to UnicodeString on Windows
  • No codepage UTF8 for Windows/macOS
  • Giving up on {$codepage UTF8}
  • Forgot the path for the .inc

Documentation

  • Some better grammar

Features

  • States stack and tests
  • States Stack Tokens and tests
  • Tokenizer with initial tests for EOF
  • Start of Source File class
  • Now identifying UTF8 characters
  • Adding skeleton for top class: Parser
  • Tests for UTF16/UTF32 with BOM
  • Adding and example and CI/CD for it

Miscellaneous Tasks

  • Adding Debug and Release build modes
  • Adding CI/CD
  • Changed name of the main workflow
  • Adding test files with all encodings
  • Add BOM UTF8 and rename BOM files
  • Adding a version file

Refactor

  • Renaming GetToken to GetNextToken
  • Using fail-fast into sub workflows
  • Eliminate magic numbers
  • Character decisions in own function
  • Using CodePoint, clean-up with TBytes
  • Fixing warnings: UnicodeString
  • Fixing more warnings: UnicodeString
  • Not using param on ProcessCharacter

Testing

  • Added test for Source File Filename
  • Added Asserts for FileType and BOM
  • Adding EOF test on BOM UTF16/32

For a list of all the changes up to date, please read CHANGELOG.md.