libcmo21/CodeGen/EnumsMigration
yyc12345 8a1fc03965 do some preparation work
- establish BMapSharp project for future development.
- refactor EnumsMigration. add csharp code output for it.
- add README for VectorGen and modify other READMEs.
2024-04-22 14:15:27 +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 do some preparation work 2024-04-22 14:15:27 +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