Changes between Version 2 and Version 3 of external


Ignore:
Timestamp:
08/12/12 17:17:14 (9 years ago)
Author:
Mark Evenson
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • external

    v2 v3  
    5454                                                       null
    5555}}}
     56
     57{{{
     58
     59isAssignable(X, X).
     60
     61isAssignable(oneWord, top).
     62isAssignable(twoWord, top).
     63
     64isAssignable(int, X)    :- isAssignable(oneWord, X).
     65isAssignable(float, X)  :- isAssignable(oneWord, X).
     66isAssignable(long, X)   :- isAssignable(twoWord, X).
     67isAssignable(double, X) :- isAssignable(twoWord, X).
     68
     69isAssignable(reference, X)   :- isAssignable(oneWord, X).
     70isAssignable(class(_, _), X) :- isAssignable(reference, X).
     71isAssignable(arrayOf(_), X)  :- isAssignable(reference, X).
     72
     73isAssignable(uninitialized, X)     :- isAssignable(reference, X).
     74isAssignable(uninitializedThis, X) :- isAssignable(uninitialized, X).
     75isAssignable(uninitialized(_), X)  :- isAssignable(uninitialized, X).
     76
     77isAssignable(null, class(_, _)).
     78isAssignable(null, arrayOf(_)).
     79isAssignable(null, X) :- isAssignable(class('java/lang/Object', BL), X),
     80                         isBootstrapLoader(BL).
     81
     82
     83}}}