<> <> <> DIRECTORY Asserting, IO; AssertingIO: CEDAR DEFINITIONS = { OPEN Asserting; readers, writers: Assertions; <> WriteProc: TYPE = PROC [to: IO.STREAM, assertion: Assertion]; ReadProc: TYPE = PROC [from: IO.STREAM, reln: Term] RETURNS [assertion: Assertion]; <> GeneralWrite: WriteProc; DontWrite: WriteProc; GeneralRead: ReadProc; Read: PROC [from: IO.STREAM] RETURNS [assertions: Assertions]; Write: PROC [to: IO.STREAM, assertions: Assertions]; WriteTail: PROC [to: IO.STREAM, assertions: Assertions]; <> WriteAssn: PROC [to: IO.STREAM, assertion: Assertion]; ReadAssn: PROC [from: IO.STREAM] RETURNS [assertion: Assertion]; SetReader: PROC [reln: Term, rp: ReadProc]; SetWriter: PROC [reln: Term, wp: WriteProc]; GetReader: PROC [reln: Term] RETURNS [ReadProc]; GetWriter: PROC [reln: Term] RETURNS [WriteProc]; }.