stream.hrl 850 B

1234567891011121314151617181920
  1. -ifndef(STREAM_HRL).
  2. -define(STREAM_HRL, true).
  3. -include("kvs.hrl").
  4. -include("cursors.hrl").
  5. -define(STREAM, [top/1, bot/1, next/1, prev/1, drop/1, take/1, append/2, cut/2,
  6. load_reader/1, writer/1, reader/1, save/1, add/1, feed/1]).
  7. -spec top(#reader{}) -> #reader{}.
  8. -spec bot(#reader{}) -> #reader{}.
  9. -spec next(#reader{}) -> #reader{} | {error,not_found | empty}.
  10. -spec prev(#reader{}) -> #reader{} | {error,not_found | empty}.
  11. -spec drop(#reader{}) -> #reader{}.
  12. -spec take(#reader{}) -> #reader{}.
  13. -spec load_reader (term()) -> #reader{}.
  14. -spec writer (term()) -> #writer{}.
  15. -spec reader (term()) -> #reader{}.
  16. -spec save (#reader{} | #writer{}) -> #reader{} | #writer{}.
  17. -spec add(#writer{}) -> #writer{}.
  18. -spec append(tuple(),term()) -> any().
  19. -spec cut(term(),term()) -> {ok,non_neg_integer()} | {error, not_found}.
  20. -endif.