module Hydra.Ext.Yaml.Language where import Hydra.All import qualified Data.Set as S yamlLanguage :: Language m yamlLanguage = Language (LanguageName "hydra/ext/yaml") $ LanguageConstraints { languageConstraintsEliminationVariants = S.empty, languageConstraintsLiteralVariants = S.fromList [ LiteralVariantBoolean, LiteralVariantFloat, LiteralVariantInteger, LiteralVariantString], languageConstraintsFloatTypes = S.fromList [FloatTypeBigfloat], languageConstraintsFunctionVariants = S.empty, languageConstraintsIntegerTypes = S.fromList [IntegerTypeBigint], languageConstraintsTermVariants = S.fromList [ TermVariantLiteral, TermVariantList, TermVariantMap, TermVariantOptional, TermVariantRecord], languageConstraintsTypeVariants = S.fromList [ TypeVariantLiteral, TypeVariantList, TypeVariantMap, TypeVariantOptional, TypeVariantRecord], languageConstraintsTypes = \typ -> case stripType typ of TypeOptional (TypeOptional _) -> False _ -> True }