WINSTR.DEF 2.6 KB

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