Browse Source

ShouldLoadClass now checks for Name annotation

kindlich 5 years ago
parent
commit
cebae626fe
No known key found for this signature in database

+ 9
- 6
JavaIntegration/src/main/java/org/openzen/zencode/java/JavaNativeModule.java View File

164
 	public HighLevelDefinition addClass(Class<?> cls) {
164
 	public HighLevelDefinition addClass(Class<?> cls) {
165
 		if (definitionByClass.containsKey(cls))
165
 		if (definitionByClass.containsKey(cls))
166
 			return definitionByClass.get(cls);
166
 			return definitionByClass.get(cls);
167
-		
168
-		HighLevelDefinition result = convertClass(cls);
169
-		return result;
167
+        
168
+        return convertClass(cls);
170
 	}
169
 	}
171
 	
170
 	
172
 	public void addGlobals(Class<?> cls) {
171
 	public void addGlobals(Class<?> cls) {
421
 		return false;
420
 		return false;
422
 	}
421
 	}
423
 	
422
 	
423
+	private String getClassName(Class<?> cls) {
424
+	    return cls.isAnnotationPresent(ZenCodeType.Name.class) ? cls.getAnnotation(ZenCodeType.Name.class).value() : cls.getName();
425
+    }
426
+	
424
 	private boolean shouldLoadClass(Class<?> cls) {
427
 	private boolean shouldLoadClass(Class<?> cls) {
425
-		return isInBasePackage(cls.getName());
426
-	}
428
+	    return isInBasePackage(getClassName(cls));
429
+    }
427
 	
430
 	
428
 	private boolean isGetterName(String name) {
431
 	private boolean isGetterName(String name) {
429
 		return name.startsWith("get") || name.startsWith("is") || name.startsWith("has");
432
 		return name.startsWith("get") || name.startsWith("is") || name.startsWith("has");
604
 		for (int i = 0; i < parameters.length; i++) {
607
 		for (int i = 0; i < parameters.length; i++) {
605
 			Parameter parameter = javaParameters[i];
608
 			Parameter parameter = javaParameters[i];
606
 
609
 
607
-			AnnotatedType parameterType = parameter.getAnnotatedType();
610
+			//AnnotatedType parameterType = parameter.getAnnotatedType();
608
 			StoredType type = loadStoredType(context, parameter.getAnnotatedType());
611
 			StoredType type = loadStoredType(context, parameter.getAnnotatedType());
609
 			Expression defaultValue = getDefaultValue(parameter, type);
612
 			Expression defaultValue = getDefaultValue(parameter, type);
610
 			parameters[i] = new FunctionParameter(type, parameter.getName(), defaultValue, parameter.isVarArgs());
613
 			parameters[i] = new FunctionParameter(type, parameter.getName(), defaultValue, parameter.isVarArgs());

Loading…
Cancel
Save