edu.neu.ccs.demeterf.inline
Class SubTyping

java.lang.Object
  extended by edu.neu.ccs.demeterf.inline.SubTyping

public class SubTyping
extends java.lang.Object


Constructor Summary
SubTyping(List<DemFGenMain> CD)
           
 
Method Summary
 boolean applicable(List<TypeUse> form, List<TypeUse> act)
          Are the given actual argument types applicable to the formal types?
 boolean applicableStar(List<TypeUse> form, List<Option<TypeUse>> act)
          Are the given actual argument types applicable to the formal types?
 TypeUse makeType(java.lang.String s)
           
 boolean possible(List<TypeUse> form, List<TypeUse> act)
          Are the given actual argument types applicable to the formal types?
 boolean possibleStar(List<TypeUse> form, List<Option<TypeUse>> act)
          Are the given actual argument types applicable to the formal types?
 boolean subtype(List<TypeUse> ts, List<TypeUse> us)
           
 boolean subtype(TypeUse t, TypeUse u)
          Is the first a subtype (<=) of the second?
 TypeUse supertype(TypeUse t)
          Find the super class of the given Type
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SubTyping

public SubTyping(List<DemFGenMain> CD)
Method Detail

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

supertype

public TypeUse supertype(TypeUse t)
Find the super class of the given Type


makeType

public TypeUse makeType(java.lang.String s)

subtype

public boolean subtype(TypeUse t,
                       TypeUse u)
Is the first a subtype (<=) of the second?


subtype

public boolean subtype(List<TypeUse> ts,
                       List<TypeUse> us)

applicable

public boolean applicable(List<TypeUse> form,
                          List<TypeUse> act)
Are the given actual argument types applicable to the formal types?


applicableStar

public boolean applicableStar(List<TypeUse> form,
                              List<Option<TypeUse>> act)
Are the given actual argument types applicable to the formal types?


possible

public boolean possible(List<TypeUse> form,
                        List<TypeUse> act)
Are the given actual argument types applicable to the formal types?


possibleStar

public boolean possibleStar(List<TypeUse> form,
                            List<Option<TypeUse>> act)
Are the given actual argument types applicable to the formal types?