module Unison.Syntax.ReservedWords ( keywords, typeModifiers, typeOrAbility, reservedOperators, delimiters, ) where import Data.Set qualified as Set import Unison.Prelude keywords :: Set Text keywords :: Set Text keywords = [Text] -> Set Text forall a. Ord a => [a] -> Set a Set.fromList [ Text "@rewrite", Text "alias", Text "cases", Text "do", Text "else", Text "false", Text "forall", Text "handle", Text "if", Text "let", Text "match", Text "namespace", Text "termLink", Text "then", Text "true", Text "typeLink", Text "use", Text "where", Text "with", Text "∀" ] Set Text -> Set Text -> Set Text forall a. Semigroup a => a -> a -> a <> Set Text typeModifiers Set Text -> Set Text -> Set Text forall a. Semigroup a => a -> a -> a <> Set Text typeOrAbility typeModifiers :: Set Text typeModifiers :: Set Text typeModifiers = [Text] -> Set Text forall a. Ord a => [a] -> Set a Set.fromList [Text "structural", Text "unique"] typeOrAbility :: Set Text typeOrAbility :: Set Text typeOrAbility = [Text] -> Set Text forall a. Ord a => [a] -> Set a Set.fromList [Text "type", Text "ability"] reservedOperators :: Set Text reservedOperators :: Set Text reservedOperators = [Text] -> Set Text forall a. Ord a => [a] -> Set a Set.fromList [ Text "=", Text "->", Text ":", Text "&&", Text "||", Text "|", Text "!", Text "'", Text "==>" ] delimiters :: Set Char delimiters :: Set Char delimiters = [Char] -> Set Char forall a. Ord a => [a] -> Set a Set.fromList [Char] "()[]{},?;"