mentor/derived/HashViewClass.m3


 Copyright (C) 1995, Digital Equipment Corporation.       
 All rights reserved.                                     
 See the file COPYRIGHT for a full description.           
                                                          
 Last modified on Thu Feb  9 08:56:54 PST 1995 by kalsow  
      modified on Sat Jun  4 16:23:08 1994 by heydon      
      modified on Wed Feb 17 17:04:32 PST 1993 by johnh   
      modified on Tue Jun  9 00:35:35 1992 by mhb         

********************************************************************

      *  NOTE: This file is generated automatically from the event
      *        definition file Hash.evt.
      ********************************************************************


<* PRAGMA LL *>

MODULE HashViewClass;

<*NOWARN*> IMPORT HashAlgClass, IntList, ZeusClass, HashFmt;
<*NOWARN*> IMPORT FormsVBT, ViewClass;

REVEAL
  T = Public BRANDED OBJECT
      OVERRIDES
        <* LL.sup = VBT.mu *>
        isCompat := IsCompat;
        <* LL.sup < VBT.mu *>
        oeSetup := Setup;
        oeInsert := Insert;
        oeFind := Find;
        oeDelete := Delete;
        oeCompare := Compare;
        oeCheckDeletable := CheckDeletable;
        oeCheckHashPosition := CheckHashPosition;
        oeAddToBucket := AddToBucket;
        oeDeleteFromBucket := DeleteFromBucket;
        <* LL.sup = VBT.mu *>
        ueFindReport := FindReport;
        ueStopFindReport := StopFindReport;
      END;

PROCEDURE IsCompat(<*UNUSED*> v: T; alg: ZeusClass.T): BOOLEAN =
  <* LL.sup = VBT.mu *>
  BEGIN
    RETURN ISTYPE(alg, HashAlgClass.T)
  END IsCompat;

PROCEDURE Setup (view: T
    ; <*UNUSED*> data: FormsVBT.T
    ; <*UNUSED*> nBuckets: INTEGER
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END Setup;
PROCEDURE Insert (view: T
    ; <*UNUSED*> key: TEXT
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END Insert;
PROCEDURE Find (view: T
    ; <*UNUSED*> key: TEXT
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END Find;
PROCEDURE Delete (view: T
    ; <*UNUSED*> key: TEXT
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END Delete;
PROCEDURE Compare (view: T
    ; <*UNUSED*> bucket: INTEGER
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END Compare;
PROCEDURE CheckDeletable (view: T
    ; <*UNUSED*> bucket: INTEGER
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END CheckDeletable;
PROCEDURE CheckHashPosition (view: T
    ; <*UNUSED*> bucket: INTEGER
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END CheckHashPosition;
PROCEDURE AddToBucket (view: T
    ; <*UNUSED*> key: TEXT
    ; <*UNUSED*> bucket: INTEGER
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END AddToBucket;
PROCEDURE DeleteFromBucket (view: T
    ; <*UNUSED*> key: TEXT
    ; <*UNUSED*> bucket: INTEGER
    ; <*UNUSED*> markEmpty: BOOLEAN
) =
  <* LL.sup < VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END DeleteFromBucket;

PROCEDURE FindReport (view: T
    ; <*UNUSED*> buckets: IntList.T
) =
  <* LL.sup = VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END FindReport;
PROCEDURE StopFindReport (view: T
) =
  <* LL.sup = VBT.mu *>
  BEGIN
    view.evtHandled := FALSE;
  END StopFindReport;

BEGIN
END HashViewClass.