danfickle / cpp-to-java-source-converter Goto Github PK
View Code? Open in Web Editor NEWA translator to convert C++ to Java. A work in progess.
License: Apache License 2.0
A translator to convert C++ to Java. A work in progess.
License: Apache License 2.0
First of all, not sure if I am setting this up correctly, as there were no instructions really. I created a folder "\home\daniel\workspace\cpp-to-java-source-converter" and put the repository (master branch) there. I then ran "mvn clean package". I found I needed to create a directory called "crap" under the root directory and put an empty file "test-statements.java" there, as this is expected. I changed to the target directory to run:
D:\home\daniel\workspace\cpp-to-java-source-converter\target>java -cp cpp-to-java-source-converter-0.1-SNAPSHOT.jar;..\lib\* com.github.danfickle.cpptojavasourceconverter.Main
Secondly, it doesn't seem to work, due to a class cast exception. Here is the output I get:
D:\home\daniel\workspace\cpp-to-java-source-converter\target>java -cp cpp-to-jav
a-source-converter-0.1-SNAPSHOT.jar;..\lib\* com.github.danfickle.cpptojavasourc
econverter.Main
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-bitfield.cp
p
org.eclipse.cdt.internal.core.dom.parser.cpp.CPPClassType cannot be cast to org.
eclipse.cdt.core.dom.ast.cpp.ICPPConstructor
java.lang.ClassCastException: org.eclipse.cdt.internal.core.dom.parser.cpp.CPPCl
assType cannot be cast to org.eclipse.cdt.core.dom.ast.cpp.ICPPConstructor
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
lExprNew(ExpressionEvaluator.java:162)
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
l1Expr(ExpressionEvaluator.java:67)
at com.github.danfickle.cpptojavasourceconverter.InitializationManager.e
val1Init(InitializationManager.java:76)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evaluat
eDeclarationReturnInitializers(SourceConverter.java:282)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.evalStmt(
StmtEvaluator.java:141)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.evalStmt(
StmtEvaluator.java:123)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.eval1Stmt
(StmtEvaluator.java:25)
at com.github.danfickle.cpptojavasourceconverter.FunctionManager.evalFun
ction(FunctionManager.java:162)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evalDec
laration(SourceConverter.java:299)
at com.github.danfickle.cpptojavasourceconverter.Traverser.traverse(Trav
erser.java:50)
at com.github.danfickle.cpptojavasourceconverter.Main.main(Main.java:37)
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
Failure to determine type of expression
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-operator-ov
erloading.cpp
org.eclipse.cdt.internal.core.dom.parser.cpp.CPPClassType cannot be cast to org.
eclipse.cdt.core.dom.ast.cpp.ICPPConstructor
java.lang.ClassCastException: org.eclipse.cdt.internal.core.dom.parser.cpp.CPPCl
assType cannot be cast to org.eclipse.cdt.core.dom.ast.cpp.ICPPConstructor
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
lExprNew(ExpressionEvaluator.java:162)
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
l1Expr(ExpressionEvaluator.java:67)
at com.github.danfickle.cpptojavasourceconverter.InitializationManager.e
val1Init(InitializationManager.java:76)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evaluat
eDeclarationReturnInitializers(SourceConverter.java:282)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.evalStmt(
StmtEvaluator.java:141)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.evalStmt(
StmtEvaluator.java:123)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.eval1Stmt
(StmtEvaluator.java:25)
at com.github.danfickle.cpptojavasourceconverter.FunctionManager.evalFun
ction(FunctionManager.java:162)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evalDec
laration(SourceConverter.java:299)
at com.github.danfickle.cpptojavasourceconverter.Traverser.traverse(Trav
erser.java:50)
at com.github.danfickle.cpptojavasourceconverter.Main.main(Main.java:37)
In: D:\home\daniel\workspace\cpp-to-java-source-converter\tests\test-expressions
.cpp
org.eclipse.cdt.internal.core.dom.parser.cpp.CPPClassType cannot be cast to org.
eclipse.cdt.core.dom.ast.cpp.ICPPConstructor
java.lang.ClassCastException: org.eclipse.cdt.internal.core.dom.parser.cpp.CPPCl
assType cannot be cast to org.eclipse.cdt.core.dom.ast.cpp.ICPPConstructor
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
lExprNew(ExpressionEvaluator.java:143)
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
l1Expr(ExpressionEvaluator.java:67)
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
lExprBinary(ExpressionEvaluator.java:1158)
at com.github.danfickle.cpptojavasourceconverter.ExpressionEvaluator.eva
l1Expr(ExpressionEvaluator.java:59)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.evalStmt(
StmtEvaluator.java:177)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.evalStmt(
StmtEvaluator.java:123)
at com.github.danfickle.cpptojavasourceconverter.StmtEvaluator.eval1Stmt
(StmtEvaluator.java:25)
at com.github.danfickle.cpptojavasourceconverter.FunctionManager.evalFun
ction(FunctionManager.java:162)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evalDec
laration(SourceConverter.java:299)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evalDec
lSpecifier(SourceConverter.java:668)
at com.github.danfickle.cpptojavasourceconverter.SourceConverter.evalDec
laration(SourceConverter.java:313)
at com.github.danfickle.cpptojavasourceconverter.Traverser.traverse(Trav
erser.java:50)
at com.github.danfickle.cpptojavasourceconverter.Main.main(Main.java:37)
D:\home\daniel\workspace\cpp-to-java-source-converter\target>
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.