As.hs revision 7439eb4a3269fa24aebfe522eb5be6f212e618e2
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mance{- |
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel ManceModule : $Header$
5d801400993c9671010d244646936d8fd435638cChristian MaederDescription : abstract AD syntax
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel ManceCopyright : (c) Stef Joosten, Christian Maeder DFKI GmbH 2010
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel ManceLicense : GPLv2 or higher, see LICENSE.txt
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mance
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel ManceMaintainer : Christian.Maeder@dfki.de
5d801400993c9671010d244646936d8fd435638cChristian MaederStability : provisional
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel MancePortability : portable
ffa6044b04fa0e31242141ff56a5d80c4233b676Felix Gabriel Mance
aa0ca44e856c87db27e61687cbb630f270976da1Felix Gabriel Mance-}
5d801400993c9671010d244646936d8fd435638cChristian Maeder
5d801400993c9671010d244646936d8fd435638cChristian Maedermodule CSMOF.As where
5d801400993c9671010d244646936d8fd435638cChristian Maeder
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Manceimport qualified Data.Set as Set
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mance
097bc9f18b722812d480df0f5c634d09cbca8e21Felix Gabriel Mancedata NamedElement = NamedElement
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mance { name :: String
852bd6145634dc2832b61c44678fe539bc1682d5Christian Maeder , typeOrTypedElem :: TypeOrTypedElem }
dc8c83e9922e4746c192916565f3522418534f3aFelix Gabriel Mance deriving (Eq, Ord, Show)
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mance
feab1106bbee4f2ea2fd48bca7106dd041e4211dFelix Gabriel Mancedata TypeOrTypedElem = Type { getType :: Type }
18ff56829e5e99383ee6106584d55bcbd8ed45e7Felix Gabriel Mance | TypedElement
668c9c725a11c0f77057152148570af853a1bc0dFelix Gabriel Mance deriving (Eq, Ord, Show)
b1162cc13e8371724e3382ae6d1cfdeb43891fbbChristian Maeder
668c9c725a11c0f77057152148570af853a1bc0dFelix Gabriel Mancedata Type = DataType | Class { getClass :: Class }
863fa65ac095659c6da1cde7fe7b839f1e7f60f9Felix Gabriel Mance deriving (Eq, Ord, Show)
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mance
c298a419605037f5352b5ad0f67b3e06db094051Felix Gabriel Mancedata Class = MkClass { isAbstract :: Bool, superClasses :: Set.Set Class }
668c9c725a11c0f77057152148570af853a1bc0dFelix Gabriel Mance deriving (Eq, Ord, Show)
668c9c725a11c0f77057152148570af853a1bc0dFelix Gabriel Mance