Created
December 6, 2012 08:37
-
-
Save pocketberserker/4222818 to your computer and use it in GitHub Desktop.
FSharpx.Iterateeのシグネチャを書いてみた
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
namespace FSharpx | |
type Stream<'a> = | |
| Chunk of 'a | |
| Empty | |
| EOF | |
type Iteratee<'el,'a> = | |
| Done of 'a * Stream<'el> | |
| Error of exn | |
| Continue of (Stream<'el> -> Iteratee<'el,'a>) | |
type Enumerator<'el,'a> = Iteratee<'el,'a> -> Iteratee<'el,'a> | |
type Enumeratee<'elo,'eli,'a> = | |
Iteratee<'eli,'a> -> Iteratee<'elo,Iteratee<'eli,'a>> | |
[<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>] | |
module Iteratee = | |
val returnI : 'a -> Iteratee<'b,'a> | |
val empty<'a> : Iteratee<'a,unit> | |
val doneI : 'a -> Stream<'b> -> Iteratee<'b,'a> | |
val continueI : (Stream<'a> -> Iteratee<'a,'b>) -> Iteratee<'a,'b> | |
val throw : exn -> Iteratee<'a,'b> | |
val bind : ('a -> Iteratee<'b,'c>) -> Iteratee<'b,'a> -> Iteratee<'b,'c> | |
val opt : Iteratee<'a,'b> -> Iteratee<'a,'b option> | |
val catchError : | |
(exn -> Iteratee<'a,'b>) -> Iteratee<'a,'b> -> Iteratee<'a,'b> | |
val tryFinally : (unit -> unit) -> Iteratee<'a,'b> -> Iteratee<'a,'b> | |
val enumEOF : Iteratee<'a,'b> -> Iteratee<'c,'b> | |
val enumErr : exn -> 'a -> Iteratee<'b,'c> | |
val run_ : Iteratee<'a,'b> -> Choice<'b,exn> | |
val run : Iteratee<'a,'b> -> 'b | |
type IterateeBuilder = | |
new : unit -> IterateeBuilder | |
member | |
Bind : m:Iteratee<'q,'r> * f:('r -> Iteratee<'q,'s>) -> | |
Iteratee<'q,'s> | |
member | |
Combine : comp1:Iteratee<'n,unit> * comp2:Iteratee<'n,'o> -> | |
Iteratee<'n,'o> | |
member Delay : f:(unit -> Iteratee<'l,'m>) -> Iteratee<'l,'m> | |
member | |
For : sequence:#seq<'b> * body:('b -> Iteratee<'c,unit>) -> | |
Iteratee<'c,unit> | |
member Return : x:'a2 -> Iteratee<'a3,'a2> | |
member ReturnFrom : m:Iteratee<'t,'a1> -> Iteratee<'t,'a1> | |
member | |
TryFinally : m:Iteratee<'h,'i> * compensation:(unit -> unit) -> | |
Iteratee<'h,'i> | |
member | |
TryWith : m:Iteratee<'j,'k> * handler:(exn -> Iteratee<'j,'k>) -> | |
Iteratee<'j,'k> | |
member | |
Using : res:'e * body:('e -> Iteratee<'f,'g>) -> Iteratee<'f,'g> | |
when 'e :> System.IDisposable and 'e : null | |
member | |
While : guard:(unit -> bool) * m:Iteratee<'d,unit> -> | |
Iteratee<'d,unit> | |
member Zero : unit -> Iteratee<'p,unit> | |
val iteratee : IterateeBuilder | |
val inline returnM : 'a -> Iteratee<'b,'a> | |
val inline ( >>= ) : | |
Iteratee<'a,'b> -> ('b -> Iteratee<'a,'c>) -> Iteratee<'a,'c> | |
val inline ( =<< ) : | |
('a -> Iteratee<'b,'c>) -> Iteratee<'b,'a> -> Iteratee<'b,'c> | |
val inline ( <*> ) : | |
Iteratee<'a,('b -> 'c)> -> Iteratee<'a,'b> -> Iteratee<'a,'c> | |
val inline ap : | |
Iteratee<'a,'b> -> Iteratee<'a,('b -> 'c)> -> Iteratee<'a,'c> | |
val inline map : ('a -> 'b) -> Iteratee<'c,'a> -> Iteratee<'c,'b> | |
val inline ( <!> ) : ('a -> 'b) -> Iteratee<'c,'a> -> Iteratee<'c,'b> | |
val inline lift2 : | |
('a -> 'b -> 'c) -> Iteratee<'d,'a> -> Iteratee<'d,'b> -> Iteratee<'d,'c> | |
val inline ( *> ) : Iteratee<'a,'b> -> Iteratee<'a,'c> -> Iteratee<'a,'c> | |
val inline ( <* ) : Iteratee<'a,'b> -> Iteratee<'a,'c> -> Iteratee<'a,'b> | |
val inline ( >>. ) : Iteratee<'a,'b> -> Iteratee<'a,'c> -> Iteratee<'a,'c> | |
val inline ( >=> ) : | |
('a -> Iteratee<'b,'c>) -> | |
('c -> Iteratee<'b,'d>) -> 'a -> Iteratee<'b,'d> | |
val inline ( <=< ) : | |
('a -> Iteratee<'b,'c>) -> | |
(('d -> Iteratee<'b,'a>) -> 'd -> Iteratee<'b,'c>) | |
val joinI : Iteratee<'a,Iteratee<'b,'c>> -> Iteratee<'a,'c> | |
val enumList : 'a list -> Enumerator<'a,'b> | |
val checkDoneEx : | |
Stream<'c> -> ((Stream<'a> -> Iteratee<'a,'b>) -> Iteratee<'c,Iteratee<'a,'b>>) -> Enumeratee<'c,'a,'b> | |
val checkDone : | |
((Stream<'a> -> Iteratee<'a,'b>) -> Iteratee<'c,Iteratee<'a,'b>>) -> Enumeratee<'c,'a,'b> | |
val checkContinue0 : | |
(Enumerator<'a,'b> -> (Stream<'a> -> Iteratee<'a,'b>) -> Iteratee<'a,'b>) -> Enumerator<'a,'b> | |
[<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>] | |
module List = | |
val fold : ('a -> 'b -> 'a) -> 'a -> Iteratee<'b list,'a> | |
val length<'a> : Iteratee<'a list,int> | |
val peek<'a> : Iteratee<'a list,'a option> | |
val head<'a> : Iteratee<'a list,'a option> | |
val drop : int -> Iteratee<'a list,unit> | |
val dropWhile : ('a -> bool) -> Iteratee<'a list,unit> | |
val dropUntil : ('a -> bool) -> Iteratee<'a list,unit> | |
val take : int -> Iteratee<'a list,'a list> | |
val takeWhile : ('a -> bool) -> Iteratee<'a list,'a list> | |
val takeUntil : ('a -> bool) -> Iteratee<'a list,'a list> | |
val heads : 'a list -> Iteratee<'a list,int> when 'a : equality | |
val many : Iteratee<'a,'b list> -> Iteratee<'a,'b list list> | |
val skipNewline : Iteratee<char list,int> | |
val readLine : Iteratee<char list,char list> | |
val readLines : Iteratee<char list,System.String list> | |
val consume<'a> : Iteratee<'a list,'a list> | |
val enumeratePure1Chunk : 'a list -> Enumerator<'a list,'b> | |
val enumeratePureNChunk : int -> 'a list -> Enumerator<'a list,'b> | |
val enumerate : 'a list -> Enumerator<'a list,'b> | |
val connect : Iteratee<'a,'b> -> 'a list -> 'b * 'a list | |
val repeat : 'a -> Enumerator<'a list,'b> | |
val replicate : int -> 'a -> Enumerator<'a list,'b> | |
val isolate : int -> Enumeratee<'a list, 'a list,'b> | |
val isolateWhile : | |
('a -> bool) -> Enumeratee<'a list, 'a list,'b> | |
val isolateUntil : | |
('a -> bool) -> Enumeratee<'a list, 'a list,'b> | |
val concatMap : | |
('a -> 'b) -> Enumeratee<'a list, 'b, 'c> | |
val map : | |
('a -> 'b) -> Enumeratee<'a list, 'b list, 'c> | |
val filter : ('a -> bool) -> Enumeratee<'a list, 'a list, 'b> | |
[<CompilationRepresentation(CompilationRepresentationFlags.ModuleSuffix)>] | |
module Binary = | |
type BS = ByteString | |
val fold : ('a -> byte -> 'a) -> 'a -> Iteratee<ByteString,'a> | |
val length : Iteratee<ByteString,int> | |
val peek : Iteratee<ByteString,byte option> | |
val head : Iteratee<ByteString,byte option> | |
val drop : int -> Iteratee<ByteString,unit> | |
val private dropWithPredicate : | |
'a -> ('a -> ByteString -> ByteString) -> Iteratee<ByteString,unit> | |
val dropWhile : (byte -> bool) -> Iteratee<ByteString,unit> | |
val dropUntil : (byte -> bool) -> Iteratee<ByteString,unit> | |
val take : int -> Iteratee<ByteString,ByteString> | |
val private takeWithPredicate : | |
('a -> bool) -> | |
(('a -> bool) -> ByteString -> ByteString * ByteString) -> | |
Iteratee<ByteString,ByteString> | |
val takeWhile : (byte -> bool) -> Iteratee<ByteString,ByteString> | |
val takeUntil : (byte -> bool) -> Iteratee<ByteString,ByteString> | |
val heads : ByteString -> Iteratee<ByteString,int> | |
val many : Iteratee<'a,ByteString> -> Iteratee<'a,ByteString list> | |
val skipNewline : Iteratee<ByteString,int> | |
val readLine : Iteratee<ByteString,ByteString> | |
val readLines : Iteratee<ByteString,ByteString list> | |
val consume : Iteratee<ByteString,ByteString> | |
val enumeratePure1Chunk : | |
ByteString -> Enumerator<ByteString,'b> | |
val enumeratePureNChunk : | |
int -> ByteString -> Enumerator<ByteString,'b> | |
val enumerate : | |
ByteString -> Enumerator<ByteString,'b> | |
val connect : | |
Iteratee<'a,'b> -> | |
Async<FSharp.Control.AsyncSeqInner<'a>> -> | |
Async<'b * FSharp.Control.AsyncSeq<'a>> | |
val repeat : byte -> Enumerator<ByteString, 'a> | |
val replicate : | |
int -> byte -> Enumerator<ByteString, 'a> | |
val isolate : | |
int -> Enumeratee<ByteString,ByteString,'a> | |
val isolateWhile : | |
(byte -> bool) -> Enumeratee<ByteString,ByteString,'a> | |
val isolateUntil : | |
(byte -> bool) -> Enumeratee<ByteString,ByteString,'a> | |
val concatMap : | |
(byte -> ByteString) -> Enumeratee<ByteString,ByteString,'a> | |
val map : | |
(byte -> byte) -> Enumeratee<ByteString,ByteString,'a> | |
val filter : | |
(byte -> bool) -> Enumeratee<ByteString, ByteString, 'a> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment