From 2badd89a58b9666563746d71069abf16f05709ea Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Mon, 14 Mar 2016 01:00:48 -0700 Subject: 2778 - fix all layers --- 076stream.mu | 41 ----------------------------------------- 1 file changed, 41 deletions(-) delete mode 100644 076stream.mu (limited to '076stream.mu') diff --git a/076stream.mu b/076stream.mu deleted file mode 100644 index c3af2ddf..00000000 --- a/076stream.mu +++ /dev/null @@ -1,41 +0,0 @@ -# new type to help incrementally read texts (arrays of characters) -container stream [ - index:number - data:address:shared:array:character -] - -def new-stream s:address:shared:array:character -> result:address:shared:stream [ - local-scope - load-ingredients - result <- new stream:type - i:address:number <- get-address *result, index:offset - *i <- copy 0 - d:address:address:shared:array:character <- get-address *result, data:offset - *d <- copy s -] - -def rewind-stream in:address:shared:stream -> in:address:shared:stream [ - local-scope - load-ingredients - x:address:number <- get-address *in, index:offset - *x <- copy 0 -] - -def read-line in:address:shared:stream -> result:address:shared:array:character, in:address:shared:stream [ - local-scope - load-ingredients - idx:address:number <- get-address *in, index:offset - s:address:shared:array:character <- get *in, data:offset - next-idx:number <- find-next s, 10/newline, *idx - result <- copy-range s, *idx, next-idx - *idx <- add next-idx, 1 # skip newline -] - -def end-of-stream? in:address:shared:stream -> result:boolean [ - local-scope - load-ingredients - idx:number <- get *in, index:offset - s:address:shared:array:character <- get *in, data:offset - len:number <- length *s - result <- greater-or-equal idx, len -] -- cgit 1.4.1-2-gfad0