repositories
/
cc1516.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
nieuwe presentatie jow
[cc1516.git]
/
yard.dcl
diff --git
a/yard.dcl
b/yard.dcl
index
9f40539
..
08b2ff1
100644
(file)
--- a/
yard.dcl
+++ b/
yard.dcl
@@
-1,23
+1,31
@@
definition module yard
definition module yard
+from StdString import class toString
from Data.Either import :: Either
from Data.Either import :: Either
-from StdClass import class Eq
+from StdClass import class
==, class
Eq
from Data.Functor import class Functor
from Control.Monad import class Monad
from Control.Applicative import class Applicative, class Alternative
from Data.Functor import class Functor
from Control.Monad import class Monad
from Control.Applicative import class Applicative, class Alternative
+from Data.Void import :: Void
+:: Error = PositionalError Int Int String | Error String
:: Parser a b = Parser ([a] -> (Either Error b, [a]))
:: Parser a b = Parser ([a] -> (Either Error b, [a]))
-:: Error = ParseException
-
-runParser :: (Parser a b) [a] -> (Either Error b, [a])
instance Functor (Parser a)
instance Applicative (Parser a)
instance Monad (Parser a)
instance Alternative (Parser a)
instance Functor (Parser a)
instance Applicative (Parser a)
instance Monad (Parser a)
instance Alternative (Parser a)
+instance toString Error
+
+runParser :: (Parser a b) [a] -> (Either Error b, [a])
+(<?>) :: (Parser a b) Error -> Parser a b
fail :: Parser a b
top :: Parser a a
fail :: Parser a b
top :: Parser a a
+peek :: Parser a a
satisfy :: (a -> Bool) -> Parser a a
satisfy :: (a -> Bool) -> Parser a a
+check :: (a -> Bool) -> Parser a a
+(until) infix 2 :: (Parser a b) (Parser a c) -> Parser a [b]
item :: a -> Parser a a | Eq a
item :: a -> Parser a a | Eq a
-list :: [a] -> Parser a [a] | Eq a
\ No newline at end of file
+list :: [a] -> Parser a [a] | Eq a
+eof :: Parser a Void