File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11package typesystem ;
22
3+ /**
4+ * the java type
5+ */
36public class JavaType extends Type {
47
58 private Class curClass ;
69
10+ /**
11+ * check if the current type can be assigned from another type
12+ *
13+ * @param the type to be checked
14+ * @return true if it can, otherwise false
15+ */
716 @ Override
817 public boolean canBeAssignedFrom (Type type ) {
918 // TODO
@@ -13,6 +22,8 @@ public boolean canBeAssignedFrom(Type type) {
1322 boolean res = false ;
1423 try {
1524 res = curClass .isAssignableFrom (((JavaType ) type ).getCurClass ());
25+
26+ // do the primitive & complex type check
1627 if (res == false ) {
1728 if (this .getCurClass ().isPrimitive ()) {
1829 res = isPrimitiveAssignableFromClass (curClass , jtype .curClass );
@@ -28,13 +39,19 @@ public boolean canBeAssignedFrom(Type type) {
2839
2940 public JavaType (Class cls ) {
3041 curClass = cls ;
31-
3242 }
3343
3444 public Class getCurClass () {
3545 return curClass ;
3646 }
3747
48+ /**
49+ * check if the primitive type can be assigned by the complex type
50+ *
51+ * @param primitive the primitive type
52+ * @param complex the complex type
53+ * @return true if it can, otherwise false
54+ */
3855 private boolean isPrimitiveAssignableFromClass (Class primitive ,
3956 Class complex ) {
4057 if (primitive == int .class ) {
You can’t perform that action at this time.
0 commit comments