libcmo21/CodeGen/EnumsMigration
yyc12345 d74b4645f0 fix: fix build issue in Unvirt and LibCmo
- fix build issue in Unvirt and LibCmo
- due to we use UTF8 string. the accessible value generator in EnumsMigration need to be changed at the same time.
- remove string helper in Unvirt because we no longer need it.
2024-08-23 17:38:45 +08:00
..
dest write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
src finish PreDelete and CheckPreDeletion. now there is no problem when deleting object 2023-09-20 15:25:43 +08:00
.gitignore do some preparation work 2024-04-22 14:15:27 +08:00
CKDefinesParser.g4 write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
CKEnumsParser.g4 write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
CKGeneralLexer.g4 write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
ClassidWalker.java write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
CommentsFinder.java write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
CommonHelper.java do some preparation work 2024-04-22 14:15:27 +08:00
CppWriter.java fix: fix build issue in Unvirt and LibCmo 2024-08-23 17:38:45 +08:00
CSharpWriter.java do some preparation work 2024-04-22 14:15:27 +08:00
DefinesWalker.java write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
EnumsHelper.java write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
EnumsWalker.java write some boring struct in VxTypes 2023-09-13 22:33:41 +08:00
IndentHelper.java do some preparation work 2024-04-22 14:15:27 +08:00
MainRunner.java do some preparation work 2024-04-22 14:15:27 +08:00
PythonWriter.java do some preparation work 2024-04-22 14:15:27 +08:00
README.md do some preparation work 2024-04-22 14:15:27 +08:00

Enums Migration

A helper program to migrate existing Virtools enum declarations into other formats.

Original Virtools SDK have various enum declarations. All of them are defined as C format and their formation are not uniform. This sub-project will use laxer and parser to recognize these diverse declarations, extract them as a series of uniform Java data struct and output them as C++ code (as C++ enum class syntax for LibCmo using), Python code (for PyBMap using), and C# code (for BMapSharp using).

The steps processing existing enum declaration is called migration as this sub-project name told.

antlr4 CKGeneralLexer.g4
antlr4 CKEnumsParser.g4
antlr4 CKDefinesParser.g4

javac *.java
java MainRunner