ALTKEYS.DEF 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. DEFINITION MODULE AltKeys;
  2. (*
  3. * REPERTOIRE
  4. * Release 1.6
  5. * By Charles Bradford and Cole Brecheen
  6. * (c) Copyright 1985-1992 PMI
  7. * Green Bay, Wisconsin
  8. * All rights reserved
  9. * (414) 468-6040
  10. *
  11. * $Header: D:/logfiles/defs/altkeys.dev 1.4 30 Dec 1990 17:58:36 coleb $
  12. *
  13. *)
  14. FROM SYSTEM IMPORT ADDRESS;
  15. FROM NdxTypes IMPORT NdxFileType;
  16. FROM GenLists IMPORT GenList;
  17. CONST
  18. RecNameCode = 65530;
  19. CriterionCode = 65531;
  20. AltKeyCode = 65532;
  21. TYPE
  22. LogicOperator = (or, and, AndNot);
  23. SelectProc = PROCEDURE(ADDRESS, CARDINAL,
  24. CARDINAL, ARRAY OF CHAR, VAR BOOLEAN):
  25. BOOLEAN;
  26. Criterion = RECORD
  27. operator: LogicOperator;
  28. rule, field: ARRAY [0..127] OF CHAR;
  29. determiner: SelectProc;
  30. END;
  31. PROCEDURE LoadAltList( VAR NdxFile: NdxFileType;
  32. InList: GenList; FieldName: ARRAY OF CHAR;
  33. Criteria: GenList): BOOLEAN;
  34. PROCEDURE FieldLoaded( NdxFile: NdxFileType;
  35. FieldName: ARRAY OF CHAR; VAR spot:
  36. CARDINAL): BOOLEAN;
  37. PROCEDURE CreateAltList( VAR NdxFile:
  38. NdxFileType; FieldName: ARRAY OF CHAR; VAR
  39. SpotUsed: CARDINAL);
  40. PROCEDURE CriteriaMet( NdxFile: NdxFileType;
  41. Criteria: GenList; VAR CriteriaValid:
  42. BOOLEAN ): BOOLEAN;
  43. PROCEDURE DisposeAltList( VAR NdxFile:
  44. NdxFileType; FieldName: ARRAY OF CHAR);
  45. PROCEDURE TallyAltLists(NdxFile: NdxFileType;
  46. VAR TheList: GenList);
  47. PROCEDURE GetAltList( NdxFile: NdxFileType;
  48. FieldName: ARRAY OF CHAR; VAR AltList:
  49. GenList): BOOLEAN;
  50. PROCEDURE GetMatchingKey( NdxFile: NdxFileType;
  51. AltList: GenList; spot: CARDINAL; VAR
  52. RecName: ARRAY OF CHAR );
  53. PROCEDURE GetMatchingKeys( NdxFile: NdxFileType;
  54. AltList: GenList; VAR KeyList: GenList):
  55. BOOLEAN;
  56. PROCEDURE StrSelector( TheAdr: ADDRESS; TheSize,
  57. TypeCode: CARDINAL; TheRule: ARRAY OF CHAR;
  58. VAR CriteriaValid: BOOLEAN ): BOOLEAN;
  59. PROCEDURE AddCriteria( CriteriaList: GenList;
  60. op: LogicOperator; TheSelectProc:
  61. SelectProc; TheRule, FieldName: ARRAY OF
  62. CHAR );
  63. PROCEDURE Init();
  64. END AltKeys.