diff options
Diffstat (limited to 'Object.hs')
-rw-r--r-- | Object.hs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Object.hs b/Object.hs new file mode 100644 index 0000000..640cf08 --- /dev/null +++ b/Object.hs @@ -0,0 +1,39 @@ +module Object ( + Object(..), + + List + ) where + + + +import Data.List +import TypeVar +import Term +import Theorem + + + +data Object = ObjNum { objNum :: Number } + | ObjName { objName :: Name } + | ObjList { objList :: List } + | ObjTyOp { objTyOp :: TypeOp } + | ObjType { objType :: Type } + | ObjConst { objConst :: Const } + | ObjVar { objVar :: Var } + | ObjTerm { objTerm :: Term } + | ObjThm { objThm :: Theorem } deriving (Eq) + +type List = [Object] + + + +instance Show Object where + show (ObjNum a) = show a + show (ObjName a) = show a + show (ObjList a) = show a + show (ObjTyOp a) = show a + show (ObjType a) = show a + show (ObjConst a) = show a + show (ObjVar a) = show a + show (ObjTerm a) = show a + show (ObjThm a) = show a |