Hets - the Heterogeneous Tool Set

Copyright(c) Dominik Dietrich Ewaryst Schulz DFKI Bremen 2011
LicenseGPLv2 or higher, see LICENSE.txt
MaintainerEwaryst.Schulz@dfki.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe

CSL.ASUtils

Description

Utils to create and access abstract syntax data

Synopsis

Documentation

mkVar :: String -> EXPRESSION Source #

A variable constructor

mkOp :: String -> [EXPRESSION] -> EXPRESSION Source #

A simple operator constructor from given operator name and arguments

mkPredefOp :: OPNAME -> [EXPRESSION] -> EXPRESSION Source #

A simple operator constructor from given operator id and arguments

mkUserdefOp :: String -> [EXTPARAM] -> [EXPRESSION] -> Range -> EXPRESSION Source #

A simple operator constructor from given operator id and arguments

mkAndAnalyzeOp :: OperatorState st => st -> String -> [EXTPARAM] -> [EXPRESSION] -> Range -> EXPRESSION Source #

mkAndAnalyzeOp' Source #

Arguments

:: OperatorState st 
=> Bool

process binders

-> st 
-> String 
-> [EXTPARAM] 
-> [EXPRESSION] 
-> Range 
-> Either String EXPRESSION 

Lookup the string in the given OperatorState

simpleName :: OPID -> String Source #

setOfUserDefined :: EXPRESSION -> Set String Source #

Returns a set of user defined constants ignoring EXTPARAM instantiation.

setOfConstsAndEPSpecs :: EXPRESSION -> (Set String, Set EXTPARAM) Source #

Returns a set of user defined constants and EXTPARAM specifications.