{-# LANGUAGE Safe #-}
module Types.Builtin (
boolRequiredValue,
charRequiredValue,
defaultCategories,
emptyValue,
floatRequiredValue,
formattedRequiredValue,
intRequiredValue,
stringRequiredValue,
) where
import qualified Data.Map as Map
import Types.GeneralType
import Types.TypeCategory
import Types.TypeInstance
defaultCategories :: CategoryMap c
defaultCategories = Map.empty
boolRequiredValue :: ValueType
boolRequiredValue = requiredSingleton BuiltinBool
stringRequiredValue :: ValueType
stringRequiredValue = requiredSingleton BuiltinString
charRequiredValue :: ValueType
charRequiredValue = requiredSingleton BuiltinChar
intRequiredValue :: ValueType
intRequiredValue = requiredSingleton BuiltinInt
floatRequiredValue :: ValueType
floatRequiredValue = requiredSingleton BuiltinFloat
formattedRequiredValue :: ValueType
formattedRequiredValue = requiredSingleton BuiltinFormatted
emptyValue :: ValueType
emptyValue = ValueType OptionalValue $ TypeMerge MergeUnion []