Site Menu Project Specification Implementation Recommendations Reference Needs Updating Work in Progress Wastebasket Wiki Manual |
StackSpec.Stack HistoryHide minor edits - Show changes to markup 2010-05-24 13:26
by -
Changed lines 1-4 from:
[@DEFINITION MODULE Stack; FROM Collections IMPORT Collection Data?, Status; to:
[@DEFINITION MODULE (* Generic Stack Template *) (* --------------------------------------------------------------------------- * This template is expanded by the M 2 R 10? template engine utility. Expansion * can be invoked from within a compiling source file using the MAKE pragma: * <* MAKE = "m2te Stack module:'Foo Stack?' component:'Foo Record?'" *> * IMPORT Foo Stack?; * ------------------------------------------------------------------------ *) FROM Collections IMPORT Capacity, Status; Changed lines 17-19 from:
defaultSize = <implementation defined>; maximumSize = <implementation defined>; to:
(* --------------------------------------------------------------------------- * Default stack size * ------------------------------------------------------------------------ *) defaultCapacity = 256; (* 256 entries *) (* --------------------------------------------------------------------------- * Maximum stack size * ------------------------------------------------------------------------ *) maximumCapacity = 1024*1024*1024; (* more than 1 billion entries *) (* --------------------------------------------------------------------------- * Synonyms for status codes * ------------------------------------------------------------------------ *) invalidStack = invalidCollection; stackEmpty = collectionEmpty; stackFull = collectionFull; Changed lines 42-56 from:
Stack = OPAQUE; PROCEDURE new( initialSize : LONGCARD; VAR status : Status ) : Stack; PROCEDURE push( stack : Stack; value : Collection Data?; VAR status : Status ); PROCEDURE pop( stack : Stack; VAR status : Status ) : Collection Data?; PROCEDURE capacity( stack : Stack) : LONGCARD; PROCEDURE numberOfEntries( stack : Stack ) : LONGCARD; PROCEDURE dispose( VAR stack : Stack ); END Stack.@] to:
(* --------------------------------------------------------------------------- * Opaque handle type: (* --------------------------------------------------------------------------- * function: PROCEDURE new ( initialSize : Capacity; VAR status : Status ) : (* --------------------------------------------------------------------------- * function: PROCEDURE push ( VAR stack : (* --------------------------------------------------------------------------- * function: PROCEDURE pop ( VAR stack : (* --------------------------------------------------------------------------- * function: PROCEDURE capacity ( VAR stack : (* --------------------------------------------------------------------------- * function: PROCEDURE entryCount ( VAR stack : (* --------------------------------------------------------------------------- * function: PROCEDURE isResizable ( stack : (* --------------------------------------------------------------------------- * function: PROCEDURE dispose ( VAR stack : END |