Просмотр исходного кода

Test update for typed event
isAsignable made null aware

benjamin.schwertfeger@gmail.com 13 лет назад
Родитель
Сommit
33242b894c

+ 15 - 9
plugins/org.yakindu.base.types/src/org/yakindu/base/types/impl/BaseTypeSystemAccessImpl.java

@@ -26,14 +26,16 @@ public class BaseTypeSystemAccessImpl implements ITypeSystemAccess {
 
 	@Override
 	public boolean isBoolean(Type type) {
-		return type != null && (type.getName().equalsIgnoreCase("boolean")
-				|| type.getName().equalsIgnoreCase("bool"));
+		return type != null
+				&& (type.getName().equalsIgnoreCase("boolean") || type
+						.getName().equalsIgnoreCase("bool"));
 	}
 
 	@Override
 	public boolean isInteger(Type type) {
-		return type != null && (type.getName().equalsIgnoreCase("integer")
-				|| type.getName().equalsIgnoreCase("int"));
+		return type != null
+				&& (type.getName().equalsIgnoreCase("integer") || type
+						.getName().equalsIgnoreCase("int"));
 	}
 
 	@Override
@@ -52,9 +54,12 @@ public class BaseTypeSystemAccessImpl implements ITypeSystemAccess {
 	}
 
 	public boolean isAssignable(Type expected, Type actual) {
+		if (expected == null && actual == null)
+			return true;
 		Type combine = combine(expected, actual);
-		if(combine == null)
+		if (combine == null) {
 			return false;
+		}
 		if (expected.getName().equals(combine.getName())) {
 			return true;
 		}
@@ -64,7 +69,7 @@ public class BaseTypeSystemAccessImpl implements ITypeSystemAccess {
 		}
 		return false;
 	}
-	
+
 	@Override
 	public Type getBoolean() {
 		Type type = TypesFactory.eINSTANCE.createType();
@@ -73,18 +78,19 @@ public class BaseTypeSystemAccessImpl implements ITypeSystemAccess {
 	}
 
 	@Override
-	public Type  getInteger() {
+	public Type getInteger() {
 		Type type = TypesFactory.eINSTANCE.createType();
 		type.setName("integer");
 		return type;
-	} 
-	
+	}
+
 	@Override
 	public Type getReal() {
 		Type type = TypesFactory.eINSTANCE.createType();
 		type.setName("real");
 		return type;
 	}
+
 	@Override
 	public Type getString() {
 		Type type = TypesFactory.eINSTANCE.createType();