java4cpp-annotations

Annotations classes for java4cpp project

License

License

GroupId

GroupId

com.github.loicoudot.java4cpp
ArtifactId

ArtifactId

java4cpp-annotations
Last Version

Last Version

1.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

java4cpp-annotations
Annotations classes for java4cpp project
Project URL

Project URL

https://github.com/loicoudot/java4cpp-annotations
Source Code Management

Source Code Management

https://github.com/loicoudot/java4cpp-annotations

Download java4cpp-annotations

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.loicoudot.java4cpp/java4cpp-annotations/ -->
<dependency>
    <groupId>com.github.loicoudot.java4cpp</groupId>
    <artifactId>java4cpp-annotations</artifactId>
    <version>1.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.loicoudot.java4cpp/java4cpp-annotations/
implementation 'com.github.loicoudot.java4cpp:java4cpp-annotations:1.0.1'
// https://jarcasting.com/artifacts/com.github.loicoudot.java4cpp/java4cpp-annotations/
implementation ("com.github.loicoudot.java4cpp:java4cpp-annotations:1.0.1")
'com.github.loicoudot.java4cpp:java4cpp-annotations:jar:1.0.1'
<dependency org="com.github.loicoudot.java4cpp" name="java4cpp-annotations" rev="1.0.1">
  <artifact name="java4cpp-annotations" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.loicoudot.java4cpp', module='java4cpp-annotations', version='1.0.1')
)
libraryDependencies += "com.github.loicoudot.java4cpp" % "java4cpp-annotations" % "1.0.1"
[com.github.loicoudot.java4cpp/java4cpp-annotations "1.0.1"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

java4cpp-annotations

Annotations classes for java4cpp project.

Gets full informations directly on the java4cpp-core page project.

Use the java4cpp annotations for controlling the mappings between the java classes and C++ proxies directly in the source code. It is also possible to define the mappings with some externals XML mappings file.

Overview

Consider this annotated java class :

	package my.package;

	@Java4Cpp
	class MyJavaClass {
		public static String myStaticField;
		@Java4CppNoWrappe
		public static String unexportedField;
		
		public MyJavaClass() {
		}
		
		@Java4CppNoWrappe
		public MyJavaClass(double arg) {
		}
		
		@Java4CppWrappe("cppMethod")
		public void myMethod(boolean arg) {
		}
	}

java4cpp will generate the following C++ proxy (of course the final result may vary according to the XML templates configuration)

	namespace my {
		namespace package {

			class MyJavaClass
			{
				public:
					static java::lang::String getMyStaticField();
					
					MyJavaClass();
					virtual ~MyJavaClass();
					
					void cppMethod(bool arg1);
			};
		}
	}

Versions

Version
1.0.1