mirror of
https://github.com/github/semantic.git
synced 2024-11-28 01:47:01 +03:00
Add type class declaration fixtures
This commit is contained in:
parent
57e24f423e
commit
21526b78ff
@ -69,24 +69,20 @@
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
(Constructor
|
||||
{ (ConstructorIdentifier)
|
||||
->(ConstructorIdentifier) }
|
||||
(TypeParameters))
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
{-(Constructor
|
||||
{-(ConstructorIdentifier)-}
|
||||
{-(TypeParameters)-})-}
|
||||
{-(Constructor
|
||||
{-(ConstructorIdentifier)-}
|
||||
{-(TypeParameters)-})-}
|
||||
(Constructor
|
||||
{ (ConstructorIdentifier)
|
||||
->(ConstructorIdentifier) }
|
||||
(TypeParameters))
|
||||
{-(Constructor
|
||||
{-(ConstructorIdentifier)-}
|
||||
{-(TypeParameters)-})-}
|
||||
|
@ -75,15 +75,13 @@
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
(Constructor
|
||||
{ (ConstructorIdentifier)
|
||||
->(ConstructorIdentifier) }
|
||||
(TypeParameters))
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
{+(Constructor
|
||||
{+(ConstructorIdentifier)+}
|
||||
{+(TypeParameters)+})+}
|
||||
{-(Constructor
|
||||
{-(ConstructorIdentifier)-}
|
||||
{-(TypeParameters)-})-}
|
||||
{-(Constructor
|
||||
{-(ConstructorIdentifier)-}
|
||||
{-(TypeParameters)-})-}
|
||||
|
48
test/fixtures/haskell/corpus/type-class-declarations.A.hs
vendored
Normal file
48
test/fixtures/haskell/corpus/type-class-declarations.A.hs
vendored
Normal file
@ -0,0 +1,48 @@
|
||||
class Show a where {}
|
||||
class Show a b where {}
|
||||
|
||||
class Show a => Read a where {}
|
||||
class (Show a, Eq a) => Read a where {}
|
||||
|
||||
class Foo a where {
|
||||
op :: Num b => a -> b -> a;
|
||||
op' :: (Num a, Num b) => a -> b -> a;
|
||||
}
|
||||
|
||||
class Foo a where
|
||||
infixl `op`
|
||||
infixr 7 `op`
|
||||
infix 7 `op`, `ip`, `ap`
|
||||
infix <$>
|
||||
infix 7 <$>
|
||||
infix 7 :
|
||||
infix 7 :.
|
||||
infix 7 :<:
|
||||
|
||||
class (Eq a) => Ord a where
|
||||
compare :: a -> a -> Ordering
|
||||
(<), (<=), (>=), (>) :: a -> a -> Bool
|
||||
max, min :: a -> a -> a
|
||||
id :: a
|
||||
|
||||
class Bar a b m => Baz a b m where {}
|
||||
|
||||
class Bar baz where
|
||||
foo :: wiz -> Baz
|
||||
default foo :: wiz -> Baz
|
||||
|
||||
class Bar (baz :: Foo) where
|
||||
|
||||
class Effectful (m :: [* -> *] -> * -> *) where
|
||||
|
||||
class Foo bar where
|
||||
type Baz wiz :: Wax
|
||||
|
||||
class Foo bar where
|
||||
type Baz wiz :: [* -> *]
|
||||
|
||||
class Bar baz => Foo fax where
|
||||
type family Woo a :: [* -> *]
|
||||
|
||||
class (Monad a, Show b) => Foo a b c | a -> c, b -> c where
|
||||
d :: a b
|
48
test/fixtures/haskell/corpus/type-class-declarations.B.hs
vendored
Normal file
48
test/fixtures/haskell/corpus/type-class-declarations.B.hs
vendored
Normal file
@ -0,0 +1,48 @@
|
||||
class Eq a where {}
|
||||
class Ord a b where {}
|
||||
|
||||
class Eq a => Ord a where {}
|
||||
class (Show a, Eq a) => Ord a where {}
|
||||
|
||||
class Bar a where {
|
||||
op' :: Num b => a -> b -> a;
|
||||
op :: (Num a, Num b) => a -> b -> a;
|
||||
}
|
||||
|
||||
class Bar a where
|
||||
infixl `op`
|
||||
infixr 8 `op`
|
||||
infix 8 `op`, `ip`, `ap`
|
||||
infix <$>
|
||||
infix 8 <$>
|
||||
infix 8 :
|
||||
infix 8 :.
|
||||
infix 8 :<:
|
||||
|
||||
class (Eq b) => Ord b where
|
||||
compare :: b -> b -> Ordering
|
||||
(<), (<=), (>=), (>) :: b -> b -> Bool
|
||||
max, min :: b -> b -> b
|
||||
id :: b
|
||||
|
||||
class Foo a b m => Bar a b m where {}
|
||||
|
||||
class Foo bat where
|
||||
bar :: bat -> Baz
|
||||
default bar :: bat -> Baz
|
||||
|
||||
class Foo (baz :: Bar) where
|
||||
|
||||
class Effectful' (m' :: [* -> *] -> * -> *) where
|
||||
|
||||
class Foo bar where
|
||||
type Baz wiz :: Wax
|
||||
|
||||
class Foo bar where
|
||||
type Baz wiz :: [* -> *]
|
||||
|
||||
class Foo baz => Bar fax where
|
||||
type family Woot a :: [* -> *]
|
||||
|
||||
class (Monad a, Show b) => Foo a b c | b -> d, a -> b where
|
||||
d :: a b
|
594
test/fixtures/haskell/corpus/type-class-declarations.diffA-B.txt
vendored
Normal file
594
test/fixtures/haskell/corpus/type-class-declarations.diffA-B.txt
vendored
Normal file
@ -0,0 +1,594 @@
|
||||
(Module
|
||||
(Empty)
|
||||
(Statements
|
||||
(TypeClass
|
||||
(Empty)
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Statements
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+}
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(Context'
|
||||
{+(Statements
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+}
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(Fixity'
|
||||
{+(Empty)+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Empty)+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(ConstructorOperator
|
||||
{+(ConstructorSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(ConstructorOperator
|
||||
{+(ConstructorSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(ConstructorOperator
|
||||
{+(ConstructorSymbol)+})+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+}
|
||||
{+(DefaultSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+})+}
|
||||
(TypeClass
|
||||
(Empty)
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
{+(AnnotatedTypeVariable
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeConstructorIdentifier)+})+}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
(Statements))
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(AnnotatedTypeVariable
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(KindFunctionType
|
||||
{+(Kind
|
||||
{+(KindListType
|
||||
{+(KindFunctionType
|
||||
{+(Kind
|
||||
{+(Star)+})+}
|
||||
{+(Kind
|
||||
{+(Star)+})+})+})+})+}
|
||||
{+(KindFunctionType
|
||||
{+(Kind
|
||||
{+(Star)+})+}
|
||||
{+(Kind
|
||||
{+(Star)+})+})+})+})+}
|
||||
{+(Statements)+})+}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Statements
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-}
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(Context'
|
||||
{-(Statements
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-}
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(Fixity'
|
||||
{-(Empty)-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Empty)-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(ConstructorOperator
|
||||
{-(ConstructorSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(ConstructorOperator
|
||||
{-(ConstructorSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(ConstructorOperator
|
||||
{-(ConstructorSymbol)-})-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-}
|
||||
{-(DefaultSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(AnnotatedTypeVariable
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeConstructorIdentifier)-})-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(AnnotatedTypeVariable
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(KindFunctionType
|
||||
{-(Kind
|
||||
{-(KindListType
|
||||
{-(KindFunctionType
|
||||
{-(Kind
|
||||
{-(Star)-})-}
|
||||
{-(Kind
|
||||
{-(Star)-})-})-})-})-}
|
||||
{-(KindFunctionType
|
||||
{-(Kind
|
||||
{-(Star)-})-}
|
||||
{-(Kind
|
||||
{-(Star)-})-})-})-})-}
|
||||
{-(Statements)-})-}
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(TypeSignature
|
||||
(TypeConstructorIdentifier)))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star))))))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
(TypeVariableIdentifier)))
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeFamily
|
||||
{ (TypeConstructorIdentifier)
|
||||
->(TypeConstructorIdentifier) }
|
||||
(TypeVariableIdentifier)
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(Empty))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(FunctionalDependency
|
||||
(Statements
|
||||
(FunctionType
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty)))
|
||||
(FunctionType
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Statements
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)))))))
|
597
test/fixtures/haskell/corpus/type-class-declarations.diffB-A.txt
vendored
Normal file
597
test/fixtures/haskell/corpus/type-class-declarations.diffB-A.txt
vendored
Normal file
@ -0,0 +1,597 @@
|
||||
(Module
|
||||
(Empty)
|
||||
(Statements
|
||||
(TypeClass
|
||||
(Empty)
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Statements
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+}
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(Context'
|
||||
{+(Statements
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+}
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(Fixity'
|
||||
{+(Empty)+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+}
|
||||
{+(VariableOperator
|
||||
{+(InfixVariableIdentifier)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Empty)+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(ConstructorOperator
|
||||
{+(ConstructorSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(ConstructorOperator
|
||||
{+(ConstructorSymbol)+})+})+}
|
||||
{+(Fixity'
|
||||
{+(Integer)+}
|
||||
{+(ConstructorOperator
|
||||
{+(ConstructorSymbol)+})+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(VariableOperator
|
||||
{+(VariableSymbol)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+}
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Context'
|
||||
{+(Class
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(Statements
|
||||
{+(TypeSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+}
|
||||
{+(DefaultSignature
|
||||
{+(VariableIdentifier)+}
|
||||
{+(FunctionType
|
||||
{+(Type
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+}
|
||||
{+(Type
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeParameters)+}
|
||||
{+(Empty)+})+})+})+})+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(AnnotatedTypeVariable
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeConstructorIdentifier)+})+}
|
||||
{+(Statements)+})+}
|
||||
{+(TypeClass
|
||||
{+(Empty)+}
|
||||
{+(TypeClassIdentifier)+}
|
||||
{+(AnnotatedTypeVariable
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(KindFunctionType
|
||||
{+(Kind
|
||||
{+(KindListType
|
||||
{+(KindFunctionType
|
||||
{+(Kind
|
||||
{+(Star)+})+}
|
||||
{+(Kind
|
||||
{+(Star)+})+})+})+})+}
|
||||
{+(KindFunctionType
|
||||
{+(Kind
|
||||
{+(Star)+})+}
|
||||
{+(Kind
|
||||
{+(Star)+})+})+})+})+}
|
||||
{+(Statements)+})+}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Statements
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-}
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(Context'
|
||||
{-(Statements
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-}
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(Fixity'
|
||||
{-(Empty)-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-}
|
||||
{-(VariableOperator
|
||||
{-(InfixVariableIdentifier)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Empty)-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(ConstructorOperator
|
||||
{-(ConstructorSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(ConstructorOperator
|
||||
{-(ConstructorSymbol)-})-})-}
|
||||
{-(Fixity'
|
||||
{-(Integer)-}
|
||||
{-(ConstructorOperator
|
||||
{-(ConstructorSymbol)-})-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(VariableOperator
|
||||
{-(VariableSymbol)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-}
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Context'
|
||||
{-(Class
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-})-})-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(Statements
|
||||
{-(TypeSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-}
|
||||
{-(DefaultSignature
|
||||
{-(VariableIdentifier)-}
|
||||
{-(FunctionType
|
||||
{-(Type
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-}
|
||||
{-(Type
|
||||
{-(TypeConstructorIdentifier)-}
|
||||
{-(TypeParameters)-}
|
||||
{-(Empty)-})-})-})-})-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(AnnotatedTypeVariable
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(TypeConstructorIdentifier)-})-}
|
||||
{-(Statements)-})-}
|
||||
{-(TypeClass
|
||||
{-(Empty)-}
|
||||
{-(TypeClassIdentifier)-}
|
||||
{-(AnnotatedTypeVariable
|
||||
{-(TypeVariableIdentifier)-}
|
||||
{-(KindFunctionType
|
||||
{-(Kind
|
||||
{-(KindListType
|
||||
{-(KindFunctionType
|
||||
{-(Kind
|
||||
{-(Star)-})-}
|
||||
{-(Kind
|
||||
{-(Star)-})-})-})-})-}
|
||||
{-(KindFunctionType
|
||||
{-(Kind
|
||||
{-(Star)-})-}
|
||||
{-(Kind
|
||||
{-(Star)-})-})-})-})-}
|
||||
{-(Statements)-})-}
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(TypeSignature
|
||||
(TypeConstructorIdentifier)))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star))))))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
(TypeVariableIdentifier)))
|
||||
{ (TypeClassIdentifier)
|
||||
->(TypeClassIdentifier) }
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeFamily
|
||||
{ (TypeConstructorIdentifier)
|
||||
->(TypeConstructorIdentifier) }
|
||||
(TypeVariableIdentifier)
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(Empty))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(FunctionalDependency
|
||||
(Statements
|
||||
(FunctionType
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty)))
|
||||
(FunctionType
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
{ (TypeVariableIdentifier)
|
||||
->(TypeVariableIdentifier) }
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Statements
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)))))))
|
341
test/fixtures/haskell/corpus/type-class-declarations.parseA.txt
vendored
Normal file
341
test/fixtures/haskell/corpus/type-class-declarations.parseA.txt
vendored
Normal file
@ -0,0 +1,341 @@
|
||||
(Module
|
||||
(Empty)
|
||||
(Statements
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(Fixity'
|
||||
(Empty)
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier))
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier))
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier)))
|
||||
(Fixity'
|
||||
(Empty)
|
||||
(VariableOperator
|
||||
(VariableSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(VariableOperator
|
||||
(VariableSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(ConstructorOperator
|
||||
(ConstructorSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(ConstructorOperator
|
||||
(ConstructorSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(ConstructorOperator
|
||||
(ConstructorSymbol)))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))))
|
||||
(DefaultSignature
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(AnnotatedTypeVariable
|
||||
(TypeVariableIdentifier)
|
||||
(TypeConstructorIdentifier))
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(AnnotatedTypeVariable
|
||||
(TypeVariableIdentifier)
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(TypeSignature
|
||||
(TypeConstructorIdentifier)))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star))))))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeFamily
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(Empty))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(FunctionalDependency
|
||||
(Statements
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Statements
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)))))))
|
341
test/fixtures/haskell/corpus/type-class-declarations.parseB.txt
vendored
Normal file
341
test/fixtures/haskell/corpus/type-class-declarations.parseB.txt
vendored
Normal file
@ -0,0 +1,341 @@
|
||||
(Module
|
||||
(Empty)
|
||||
(Statements
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(Fixity'
|
||||
(Empty)
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier))
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier))
|
||||
(VariableOperator
|
||||
(InfixVariableIdentifier)))
|
||||
(Fixity'
|
||||
(Empty)
|
||||
(VariableOperator
|
||||
(VariableSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(VariableOperator
|
||||
(VariableSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(ConstructorOperator
|
||||
(ConstructorSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(ConstructorOperator
|
||||
(ConstructorSymbol)))
|
||||
(Fixity'
|
||||
(Integer)
|
||||
(ConstructorOperator
|
||||
(ConstructorSymbol)))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(VariableOperator
|
||||
(VariableSymbol))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))))
|
||||
(DefaultSignature
|
||||
(VariableIdentifier)
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(AnnotatedTypeVariable
|
||||
(TypeVariableIdentifier)
|
||||
(TypeConstructorIdentifier))
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(AnnotatedTypeVariable
|
||||
(TypeVariableIdentifier)
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(Statements))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(TypeSignature
|
||||
(TypeConstructorIdentifier)))))
|
||||
(TypeClass
|
||||
(Empty)
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star))))))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(Statements
|
||||
(TypeFamily
|
||||
(TypeConstructorIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(KindSignature
|
||||
(KindListType
|
||||
(KindFunctionType
|
||||
(Kind
|
||||
(Star))
|
||||
(Kind
|
||||
(Star)))))
|
||||
(Empty))))
|
||||
(TypeClass
|
||||
(Context'
|
||||
(Statements
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))
|
||||
(Class
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier))))
|
||||
(TypeClassIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)
|
||||
(FunctionalDependency
|
||||
(Statements
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))
|
||||
(FunctionType
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty))
|
||||
(Type
|
||||
(TypeVariableIdentifier)
|
||||
(TypeParameters)
|
||||
(Empty)))))
|
||||
(Statements
|
||||
(TypeSignature
|
||||
(VariableIdentifier)
|
||||
(Statements
|
||||
(TypeVariableIdentifier)
|
||||
(TypeVariableIdentifier)))))))
|
@ -52,17 +52,17 @@
|
||||
(TypeConstructorIdentifier))
|
||||
(TypePattern
|
||||
(TupleConstructor)))
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier))
|
||||
(TypePattern
|
||||
{ (FunctionConstructor)
|
||||
->(TupleConstructor) }))
|
||||
{+(TypeSynonym
|
||||
{+(Statements
|
||||
{+(TypeConstructorIdentifier)+})+}
|
||||
{+(TypePattern
|
||||
{+(TupleConstructor)+})+})+}
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
{ (TypeConstructorIdentifier)
|
||||
->(TypeConstructorIdentifier) })
|
||||
(TypePattern
|
||||
(FunctionConstructor)))
|
||||
{+(FunctionConstructor)+})+})+}
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier))
|
||||
|
@ -52,11 +52,12 @@
|
||||
(TypeConstructorIdentifier))
|
||||
(TypePattern
|
||||
(TupleConstructor)))
|
||||
{+(TypeSynonym
|
||||
{+(Statements
|
||||
{+(TypeConstructorIdentifier)+})+}
|
||||
{+(TypePattern
|
||||
{+(FunctionConstructor)+})+})+}
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
(TypeConstructorIdentifier))
|
||||
(TypePattern
|
||||
{ (TupleConstructor)
|
||||
->(FunctionConstructor) }))
|
||||
{+(TypeSynonym
|
||||
{+(Statements
|
||||
{+(TypeConstructorIdentifier)+})+}
|
||||
@ -114,11 +115,14 @@
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+}
|
||||
{+(Empty)+})+})+})+})+})+}
|
||||
{+(TypeSynonym
|
||||
{+(Statements
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeConstructorIdentifier)+})+}
|
||||
{+(TextElement)+})+}
|
||||
(TypeSynonym
|
||||
(Statements
|
||||
{ (TypeConstructorIdentifier)
|
||||
->(TypeConstructorIdentifier) }
|
||||
{+(TypeConstructorIdentifier)+})
|
||||
{ (TypePattern
|
||||
{-(FunctionConstructor)-})
|
||||
->(TextElement) })
|
||||
{+(TypeSynonym
|
||||
{+(Statements
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
@ -167,16 +171,6 @@
|
||||
{+(TypeConstructorIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+}
|
||||
{+(TypeVariableIdentifier)+})+})+})+})+}
|
||||
{-(TypeSynonym
|
||||
{-(Statements
|
||||
{-(TypeConstructorIdentifier)-})-}
|
||||
{-(TypePattern
|
||||
{-(TupleConstructor)-})-})-}
|
||||
{-(TypeSynonym
|
||||
{-(Statements
|
||||
{-(TypeConstructorIdentifier)-})-}
|
||||
{-(TypePattern
|
||||
{-(FunctionConstructor)-})-})-}
|
||||
{-(TypeSynonym
|
||||
{-(Statements
|
||||
{-(TypeConstructorIdentifier)-})-}
|
||||
|
Loading…
Reference in New Issue
Block a user