INTERFACEA ChangeSet.T is a named set of three-tuples: (packagename, pre-change-tag, post-change-tag) with an optional textual description.ChangeSet ; IMPORT Rd, Wr, Time, TextSeq, TextTextTbl;
---------------------------------------------------------------------------
CONST Brand = "Elego ComPact change set description class";---------------------------------------------------------------------------
EXCEPTION Error(TEXT);---------------------------------------------------------------------------
TYPE T <: Public; Public = OBJECT METHODS (*-----------------------------------------------------------------------*) init(name : TEXT) : T; (*-----------------------------------------------------------------------*) getName() : TEXT; (*-----------------------------------------------------------------------*) getDate() : Time.T; (*-----------------------------------------------------------------------*) getUser() : TEXT; (*-----------------------------------------------------------------------*) description() : TEXT; (*-----------------------------------------------------------------------*) packages() : TextSeq.T; (*-----------------------------------------------------------------------*) preState() : TextTextTbl.T; (*-----------------------------------------------------------------------*) postState() : TextTextTbl.T; (*-----------------------------------------------------------------------*) setName(name : TEXT); (*-----------------------------------------------------------------------*) setDate(date : Time.T); (*-----------------------------------------------------------------------*) setUser(user : TEXT); (*-----------------------------------------------------------------------*) setDescription(desc : TEXT); (*-----------------------------------------------------------------------*) add(pkg, pre, post: TEXT); (*-----------------------------------------------------------------------*) getPreTag(pkg : TEXT) : TEXT; (*-----------------------------------------------------------------------*) getPostTag(pkg : TEXT) : TEXT; (*-----------------------------------------------------------------------*) parse(rd : Rd.T; fn : TEXT := "unknown") RAISES {Error}; (*-----------------------------------------------------------------------*) read(fn : TEXT) RAISES {Error}; (*-----------------------------------------------------------------------*) write(wr : Wr.T; fn : TEXT := "unknown") RAISES {Error}; (*-----------------------------------------------------------------------*) save(fn : TEXT) RAISES {Error}; (*-----------------------------------------------------------------------*) toText() : TEXT; (*-----------------------------------------------------------------------*) logText() : TEXT; END; END ChangeSet.