summaryrefslogblamecommitdiff
path: root/docs/development/scala.tools.nsc/nscTypes.dot
blob: b4c0cb5960f822ef48d999778656ac913634787b (plain) (tree)
1
2
3
4
5
6
7
8
9





                  
 
                       
 
      
 
                                                       

                         
                                                               

                                        
                 
 
                                                        
                        
                                    
 
                          
                                  
 
                                            
                   
 
                                                  
                      
 
                                                                          

                             
                                      
                
 
                                          
                  


                       

                                             
 

                                                            
 

                                                                
 

                                                        
 
                      
 

                                                                        
 

                                                                                            

                                                                                                      
                                       
 

                                                        
 

                                                                       
 

                                                                             






                                                                      

                                                                           
 


                                                                                       

                                                                                  
 

                                                                     
 

                                                                   
 


                                                                                                              
                  

 
digraph SQLTypes {

  size="4,4"
  rankdir=BT
  rank=max
  ratio=compress

  node [shape = record]

  Type

  SimpleTypeProxy [label = "{SimpleTypeProxy|(trait)}"]
  SimpleTypeProxy -> Type

  RewrappingTypeProxy [label = "{RewrappingTypeProxy|(trait)}"]
  RewrappingTypeProxy -> SimpleTypeProxy

  SubType -> Type

  NotNullType [label = "{NotNullType|underlying: Type}"]
  NotNullType -> SubType
  NotNullType -> RewrappingTypeProxy

  SingletonType -> SubType
  SingletonType -> SimpleTypeProxy

  ErrorType [label = "{ErrorType|(object)}"]
  ErrorType -> Type

  WildcardType [label = "{WildcardType|(object)}"]
  WildcardType -> Type

  BoundedWildcardType [label = "{BoundedWildcardType|bounds: TypeBounds}"]
  BoundedWildcardType -> Type

  NoType [label = "{NoType|(object)}"]
  NoType -> Type

  NoPrefix [label = "{NoPrefix|(object)}"]
  NoPrefix -> Type

  DeBruijnIndex -> Type

  ThisType [label = "{ThisType|sym: Symbol}"]
  ThisType -> SingletonType

  SingleType [label = "{SingleType|pre: Type\nsym: Symbol}"]
  SingleType -> SingletonType

  SuperType [label = "{SuperType|thistpe: Type\nsupertp: Type}"]
  SuperType -> SingletonType

  TypeBounds [label = "{TypeBounds|lo: Type\nhi: Type}"]
  TypeBounds -> SubType

  CompoundType -> Type

  RefinedType[label = "{RefinedType|parents: List[Type]\ndecls: Scope}"]
  RefinedType -> CompoundType

  ClassInfoType[label = "{ClassInfoType|parents: List[Type]\ndecls: Scope\nsymbol: Symbol}"]
  ClassInfoType -> CompoundType

  PackageClassInfoType[label = "{PackageClassInfoType|decls: Scope\nclazz: Symbol\nloader: LazyType}"]
  PackageClassInfoType -> ClassInfoType

  ConstantType[label = "{ConstantType|value: Constant}"]
  ConstantType -> SingletonType

  TypeRef[label = "{TypeRef|pre: Type\nsym: Symbol\nargs: List[Type]}"]
  TypeRef -> Type

  MethodType[label = "{MethodType|paramTypes: List[Type]\nresultType: Type}"]
  MethodType -> Type

  ImplicitMethodType[label = "{MethodType|pts: List[Type]\nrt: Type}"]
  ImplicitMethodType -> MethodType

  JavaMethodType[label = "{MethodType|pts: List[Type]\nrt: Type}"]
  JavaMethodType -> MethodType

  PolyType[label = "{PolyType|typeParams: List[Symbol]\nresultType: Type}"]
  PolyType -> Type

  OverloadedType[label = "{OverloadedType|quantified: List[Symbol]\nunderlying: Type}"]
  ExistentialType -> RewrappingTypeProxy

  OverloadedType[label = "{OverloadedType|pre: Type\nalternatives: List[Symbol]}"]
  OverloadedType -> Type

  AntiPolyType[label = "{AntiPolyType|pre: Type\ntargs: List[Type]}"]
  AntiPolyType -> Type

  TypeVar[label = "{TypeVar|origin: Type\nconstr: TypeConstraint}"]
  TypeVar -> Type

  AnnotatedType[label = "{AnnotatedType|attributes: List[AnnotationInfo]\nunderlying: Type\nselfsym: Symbol}"]
  AnnotatedType -> RewrappingTypeProxy

  LazyType -> Type

}