diff options
author | Charles Blake <cblake@csail.mit.edu> | 2015-08-02 12:29:24 -0400 |
---|---|---|
committer | Charles Blake <cblake@csail.mit.edu> | 2015-08-02 12:29:24 -0400 |
commit | 1bea224c4a7f05cd3b3c7eef6b2246ddac371555 (patch) | |
tree | f3ada7d3d94bc439790100176f1b4b6586931834 | |
parent | 2e4e0ffd3d69e37c9c6273979359d41ae65bf48a (diff) | |
download | Nim-1bea224c4a7f05cd3b3c7eef6b2246ddac371555.tar.gz |
Try to get examples to render right as HTML.
-rw-r--r-- | lib/pure/memfiles.nim | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/pure/memfiles.nim b/lib/pure/memfiles.nim index e94ccaf3d..f1bd7d11c 100644 --- a/lib/pure/memfiles.nim +++ b/lib/pure/memfiles.nim @@ -268,12 +268,14 @@ iterator memSlices*(mfile: MemFile, delim='\l', eat='\r'): MemSlice {.inline.} = ## This zero copy, memchr-limited method is probably the fastest way to ## iterate through lines in a file, however the returned (data,size) objects ## are NOT Nim strings or even terminated C strings. So, be careful how data - ## is accessed (e.g., use C mem* functions, not str* functions). Example: + ## is accessed (e.g., use C mem* functions, not str* functions). Example: + ## ## .. code-block:: nim ## var count = 0 ## for slice in memSlices(memfiles.open("foo")): ## inc(count) ## echo count + proc c_memchr(cstr: pointer, c: char, n: csize): pointer {. importc: "memchr", header: "<string.h>" .} proc `-!`(p, q: pointer): int {.inline.} = return cast[int](p) -% cast[int](q) @@ -308,9 +310,11 @@ iterator lines*(mfile: MemFile, delim='\l', eat='\r'): TaintedString {.inline.} ## Return each line in a file as a Nim string, like lines(File). ## Default delimiting is [\\r]\\l which parse Unix or Windows text file lines. ## Pass eat='\0' to be strictly delim-delimited. Example: + ## ## .. code-block:: nim ## for line in lines(memfiles.open("foo")): ## echo line + var buf = TaintedString(newStringOfCap(80)) for line in lines(mfile, buf, delim, eat): yield buf |