summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGilles Dubochet <gilles.dubochet@epfl.ch>2005-11-13 14:10:24 +0000
committerGilles Dubochet <gilles.dubochet@epfl.ch>2005-11-13 14:10:24 +0000
commit7fa8d8b0988419cf9b6e3e24d2021c989bf1d45f (patch)
tree3708577ef9dd92b4fd5fd3cd2e9df95e47b226f2 /doc
parente2b9df12505fdb599bc6d61f6058de22bfe2a9c1 (diff)
downloadscala-7fa8d8b0988419cf9b6e3e24d2021c989bf1d45f.tar.gz
scala-7fa8d8b0988419cf9b6e3e24d2021c989bf1d45f.tar.bz2
scala-7fa8d8b0988419cf9b6e3e24d2021c989bf1d45f.zip
A graph of NSC's datatype classes.
Diffstat (limited to 'doc')
-rw-r--r--doc/devel/nscTypes.dot73
1 files changed, 73 insertions, 0 deletions
diff --git a/doc/devel/nscTypes.dot b/doc/devel/nscTypes.dot
new file mode 100644
index 0000000000..8e4e531aa6
--- /dev/null
+++ b/doc/devel/nscTypes.dot
@@ -0,0 +1,73 @@
+digraph SQLTypes {
+
+ size="4,4"
+ rankdir=BT
+ rank=max
+ ratio=compress
+
+ node [shape = record]
+
+ Type
+
+ SubType -> Type
+
+ SingletonType -> SubType
+
+ ErrorType -> Type
+
+ WildcardType -> Type
+
+ NoType -> Type
+
+ NoPrefix -> 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}"]
+ 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
+
+ PolyType[label = "{PolyType|typeParams: List[Symbol]\nresultType: Type}"]
+ PolyType -> Type
+
+ 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
+
+ LazyType -> Type
+
+ LazyPolyType[label = "{LazyPolyType|typeParams: List[Symbol]\nrestp: Type}"]
+ LazyPolyType -> LazyType
+
+} \ No newline at end of file