Skip to content

Releases: rpinchbeck/Abnf-To-Antlr

Version 1.7.2

11 Jan 17:46
9b4893a
Compare
Choose a tag to compare
  • Support case-insensitive prefixes on num-val and char-val
  • Support case-insensitive hex-val
  • Test EOF after rules and comments
  • Test return value from console application

Version 1.7.1

05 Jan 04:44
819645a
Compare
Choose a tag to compare

Fix bug with forward references to lexer rules.
Add full grammar tests for more comprehensive testing.

Version 1.7

05 Jan 01:57
4664a57
Compare
Choose a tag to compare
  • Support rules with incremental alternatives (=/ operator)
  • Rely on Antlr3.Runtime assembly reference instead of NuGet package.
  • Bug fix to add parentheses around long repetitions

Version 1.6

04 Jan 00:56
6bb0569
Compare
Choose a tag to compare
  • Support RFC 7405 (Case-Sensitive String Support in ABNF).
  • Support Errata 5334 [Single-quoted strings are case-sensitive].
  • Show detailed ANTLR error messages with line number and column number.
  • Treat all ANTLR errors as exceptions (ignores ANTLR auto recovery).
  • Treat repetitions as greedy (e.g., 1*4"8" translates to ''8' (('8' '8' '8') | ('8' '8') | '8'?) instead of '8' ('8'? | ('8' '8') | ('8' '8' '8')).
  • Add comprehensive file-driven unit tests with 95% code coverage.
  • Fix num-val concatenations (e.g., %x41.42 translates to ('\u0041' '\u0042') instead of ('\u0041'|'\u0042'))
  • Fix command line to support --direct parameter correctly
  • Add generator solution for editing AbnfAst.g3 and generating parser and lexer files in Visual Studio.

Version 1.5.1

27 Apr 23:03
6bb0569
Compare
Choose a tag to compare

Ensure that uppercase and lowercase characters are added to distinct character collection for char-val nodes.

Version 1.5

27 Apr 11:49
e466c16
Compare
Choose a tag to compare

Add case-insensitivity for char-val nodes per https://tools.ietf.org/html/rfc5234#section-2.3 which states...

ABNF strings are case insensitive and the character set for these strings is US-ASCII.

Hence:

 rulename = "abc"

and:

 rulename = "aBc"

will match "abc", "Abc", "aBc", "abC", "ABc", "aBC", "AbC", and "ABC".

To specify a rule that is case sensitive, specify the characters individually.

For example:

 rulename    =  %d97 %d98 %d99

or

 rulename    =  %d97.98.99

will match only the string that comprises only the lowercase characters, abc.

Version 1.4 imported from SourceForge

17 Sep 20:46
Compare
Choose a tag to compare
v1.4

Version 1.4 imported from SourceForge.

Version 1.3 imported from SourceForge

17 Sep 20:41
Compare
Choose a tag to compare
v1.3

Version 1.3 imported from SourceForge.

Version 1.2 imported from SourceForge

17 Sep 20:33
Compare
Choose a tag to compare
v1.2

Version 1.2 imported from SourceForge.

Version 1.1 imported from SourceForge

17 Sep 20:22
Compare
Choose a tag to compare
v1.1

Version 1.1 imported from SourceForge.