WINSTR.DEF 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. (* Release 3.10 *)
  2. (*-------------------------------------------------------------------------*
  3. * *
  4. * WINSTR.DEF - Modula-2 far string support for Windows *
  5. * *
  6. * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
  7. * All Rights Reserved *
  8. * *
  9. *--------------------------------------------------------------------------*)
  10. (*# call(o_a_copy=>off,ds_eq_ss=>off,seg_name=>null) *)
  11. (*# module(implementation=>off,init_code=>off) *)
  12. (*# data(seg_name=>null,near_ptr=>off) *)
  13. DEFINITION MODULE WinStr;
  14. TYPE
  15. CHARSET = SET OF CHAR;
  16. PosLen = RECORD
  17. Pos,Len : CARDINAL;
  18. END; (*PosLen*)
  19. PROCEDURE Compare(S1,S2:ARRAY OF CHAR):INTEGER;
  20. PROCEDURE Length(S:ARRAY OF CHAR):CARDINAL;
  21. PROCEDURE Concat(VAR R:ARRAY OF CHAR;S1,S2:ARRAY OF CHAR);
  22. PROCEDURE Append(VAR R:ARRAY OF CHAR;S:ARRAY OF CHAR);
  23. PROCEDURE Copy(VAR R:ARRAY OF CHAR;S:ARRAY OF CHAR);
  24. PROCEDURE Delete(VAR S:ARRAY OF CHAR;P,L:CARDINAL);
  25. PROCEDURE Insert(VAR S1:ARRAY OF CHAR;S2:ARRAY OF CHAR;P:CARDINAL);
  26. PROCEDURE CharPos(S:ARRAY OF CHAR;C:CHAR):CARDINAL;
  27. PROCEDURE Caps(VAR S:ARRAY OF CHAR);
  28. PROCEDURE Lows(VAR S:ARRAY OF CHAR);
  29. PROCEDURE Slice(VAR R:ARRAY OF CHAR;S:ARRAY OF CHAR;P,L:CARDINAL);
  30. PROCEDURE Pos(S,P:ARRAY OF CHAR):CARDINAL;
  31. PROCEDURE NextPos(S,P:ARRAY OF CHAR;Place:CARDINAL):CARDINAL;
  32. PROCEDURE RCharPos(S:ARRAY OF CHAR;C:CHAR):CARDINAL;
  33. PROCEDURE Item(VAR R:ARRAY OF CHAR;S:ARRAY OF CHAR;T:CHARSET;N:CARDINAL);
  34. PROCEDURE ItemS(VAR R:ARRAY OF CHAR;S,T:ARRAY OF CHAR;N:CARDINAL);
  35. PROCEDURE Prepend(VAR S1:ARRAY OF CHAR;S2:ARRAY OF CHAR);
  36. PROCEDURE Subst(VAR S1:ARRAY OF CHAR;Target,New:ARRAY OF CHAR);
  37. PROCEDURE Match(Source,Pattern:ARRAY OF CHAR):BOOLEAN;
  38. (* Returns TRUE if the string in Source matches Pattern. The pattern *)
  39. (* may contain any number of the wildcard characters '*' and '?' *)
  40. (* '?' matches any single character *)
  41. (* '*' matches any sequence of charcters *)
  42. (* (including a zero length sequence) *)
  43. (* e.g. '*m?t*i*' will match 'Automatic' *)
  44. PROCEDURE FindSubStr(Source,Pattern:ARRAY OF CHAR;VAR pos:ARRAY OF PosLen):BOOLEAN;
  45. PROCEDURE IntToStr(V:LONGINT;VAR S:ARRAY OF CHAR;Base:CARDINAL;VAR OK:BOOLEAN);
  46. PROCEDURE CardToStr(V:LONGCARD;VAR S:ARRAY OF CHAR;Base:CARDINAL;VAR OK:BOOLEAN);
  47. PROCEDURE StrToInt(S:ARRAY OF CHAR;Base:CARDINAL;VAR OK:BOOLEAN):LONGINT;
  48. PROCEDURE StrToCard(S:ARRAY OF CHAR;Base:CARDINAL;VAR OK:BOOLEAN):LONGCARD;
  49. PROCEDURE StrToC(S:ARRAY OF CHAR;VAR D:ARRAY OF CHAR):BOOLEAN;
  50. PROCEDURE StrToPas(S:ARRAY OF CHAR;VAR D:ARRAY OF CHAR): BOOLEAN;
  51. END WinStr.
  52.