home *** CD-ROM | disk | FTP | other *** search
/ TestDrive Super Store 2.3 / TESTDRIVE_2.ISO / realizer / lib / stdstrng.rlz < prev    next >
Encoding:
Text File  |  1992-09-30  |  4.1 KB  |  186 lines

  1. '***********************************************************************
  2. '    StdStrng.rlz                              
  3. '
  4. '    Standard String Function Library
  5. '
  6. '    Copyright ⌐ 1991-1992 Computer Associates International, Inc.
  7. '    All rights reserved.
  8. '
  9. '***********************************************************************
  10.  
  11. IF QVar(%%StdStrng, _Defined) THEN
  12.     EXIT MACRO
  13. END IF
  14. %%StdStrng = 1
  15.  
  16. RUN "StdError"
  17.  
  18. EXTERNAL "standard" FUNC HexToNum(POINTER(_Alpha + _Scalar)) AS DWORD
  19. EXTERNAL "standard" FUNC OctToNum(POINTER(_Alpha + _Scalar)) AS DWORD
  20. EXTERNAL "standard" FUNC BinToNum(POINTER(_Alpha + _Scalar)) AS DWORD
  21.  
  22. FUNC NumToStr(rsValue)
  23.     ECType(rsValue, _Real + _Scalar, 1)
  24.     RETURN Sprint("P(0)", rsValue)
  25. END FUNC
  26.  
  27. EXTERNAL "user" PROC AnsiLower(POINTER)
  28. FUNC LCase$(asString)
  29.     LOCAL t
  30.  
  31.     ECType(asString, _Alpha + _Scalar, 1)
  32.     t = asString
  33.     AnsiLower(t)
  34.     RETURN t
  35. END FUNC
  36.  
  37. EXTERNAL "user" PROC AnsiUpper(POINTER)
  38. FUNC UCase$(asString)
  39.     LOCAL t
  40.  
  41.     ECType(asString, _Alpha + _Scalar, 1)
  42.     t = asString
  43.     AnsiUpper(t)
  44.     RETURN t
  45. END FUNC
  46.  
  47. EXTERNAL "standard" FUNC strfirstnonws(POINTER) AS WORD
  48. FUNC LTrim$(asString)
  49.  
  50.     ECType(asString, _Alpha + _Scalar, 1)
  51.     RETURN Mid$(asString, strfirstnonws(asString))
  52. END FUNC
  53.  
  54. EXTERNAL "standard" FUNC strlastnonws(POINTER) AS WORD
  55. FUNC RTrim$(asString)
  56.  
  57.     ECType(asString, _Alpha + _Scalar, 1)
  58.     RETURN Left$(asString, strlastnonws(asString))
  59. END FUNC
  60.  
  61. EXTERNAL "standard" PROC strreverse(POINTER)
  62. FUNC Reverse$(asString)
  63.     LOCAL t
  64.  
  65.     ECType(asString, _Alpha + _Scalar, 1)
  66.     t = asString
  67.     strreverse(t)
  68.     RETURN t
  69. END FUNC
  70.  
  71. EXTERNAL "standard" FUNC itohex(DWORD, POINTER) AS WORD
  72. FUNC Hex$(rsValue)
  73.     LOCAL buffer, length
  74.  
  75.     ECType(rsValue, _Real + _Scalar, 1)
  76.     buffer = String$(20, 32)
  77.     length = itohex(rsValue, buffer)
  78.     RETURN Left$(buffer, length)
  79. END FUNC
  80.     
  81. EXTERNAL "standard" FUNC itooct(DWORD, POINTER) AS WORD
  82. FUNC Oct$(rsValue)
  83.     LOCAL buffer, length
  84.  
  85.     ECType(rsValue, _Real + _Scalar, 1)
  86.     buffer = String$(30, 32)
  87.     length = itooct(rsValue, buffer)
  88.     RETURN Left$(buffer, length)
  89. END FUNC
  90.     
  91. EXTERNAL "standard" FUNC itobin(DWORD, POINTER) AS WORD
  92. FUNC Bin$(rsValue)
  93.     LOCAL buffer, length
  94.  
  95.     ECType(rsValue, _Real + _Scalar, 1)
  96.     buffer = String$(40, 32)
  97.     length =itobin(rsValue, buffer)
  98.     RETURN Left$(buffer, length)
  99. END FUNC
  100.  
  101. FUNC StrInsert$(asSource, rsPos, asInsert)
  102.     ECType(asSource, _Alpha + _Scalar, 1)
  103.     ECType(rsPos, _Real + _Scalar, 2)
  104.     ECType(asInsert, _Alpha + _Scalar, 3)
  105.     ECRange(rsPos, -32767, 32767, 2)
  106.     RETURN SubStr$(asSource, "", asInsert, rsPos)
  107. END FUNC
  108.  
  109. FUNC StrDelete$(asSource, rsPos, rsNumChars)
  110.     ECType(asSource, _Alpha + _Scalar, 1)
  111.     ECType(rsPos, _Real + _Scalar, 2)
  112.     ECType(rsNumChars, _Real + _Scalar, 3)
  113.     ECRange(rsPos, -32767, 32767, 2)
  114.     ECRange(rsNumChars, -32767, 32767, 3)
  115.     RETURN SubStr$(asSource, "", "", rsPos, rsNumChars)
  116. END FUNC
  117.  
  118. EXTERNAL "standard" PROC stdmki(INTEGER, POINTER)
  119. FUNC MKI$(n)
  120.     LOCAL s
  121.  
  122.     ECType(n, _Real + _Scalar, 1)
  123.     ECRange(n, -32768, 32767, 1)
  124.     s = "  "
  125.     stdmki(n, s)
  126.     RETURN s
  127. END FUNC
  128.  
  129. EXTERNAL "standard" PROC stdmkl(LONG, POINTER)
  130. FUNC MKL$(n)
  131.     LOCAL s
  132.  
  133.     ECType(n, _Real + _Scalar, 1)
  134.     ECRange(n, -2147483648, 2147483647, 1)
  135.     s = "    "
  136.     stdmkl(n, s)
  137.     RETURN s
  138. END FUNC
  139.  
  140. EXTERNAL "standard" PROC stdmks(REAL, POINTER)
  141. FUNC MKS$(n)
  142.     LOCAL s
  143.  
  144.     ECType(n, _Real + _Scalar, 1)
  145.     s = "    "
  146.     stdmks(n, s)
  147.     RETURN s
  148. END FUNC
  149.  
  150. EXTERNAL "standard" PROC stdmkd(REAL, POINTER)
  151. FUNC MKD$(n)
  152.     LOCAL s
  153.  
  154.     ECType(n, _Real + _Scalar, 1)
  155.     s = "        "
  156.     stdmkd(n, s)
  157.     RETURN s
  158. END FUNC
  159.  
  160. EXTERNAL "standard" FUNC stdcvi(POINTER) AS INTEGER
  161. FUNC CVI(s)
  162.     ECType(s, _Alpha + _Scalar, 1)
  163.     RETURN stdcvi(s + String$(2, 0))
  164. END FUNC
  165.  
  166. EXTERNAL "standard" FUNC stdcvl(POINTER) AS LONG
  167. FUNC CVL(s)
  168.     ECType(s, _Alpha + _Scalar, 1)
  169.     RETURN stdcvl(s + String$(4, 0))
  170. END FUNC
  171.  
  172. EXTERNAL "standard" FUNC stdcvs(POINTER) AS REAL
  173. FUNC CVS(s)
  174.     ECType(s, _Alpha + _Scalar, 1)
  175.     RETURN stdcvs(s + String$(4, 0))
  176. END FUNC
  177.  
  178. EXTERNAL "standard" FUNC stdcvd(POINTER) AS REAL
  179. FUNC CVD(s)
  180.     ECType(s, _Alpha + _Scalar, 1)
  181.     RETURN stdcvd(s + String$(8, 0))
  182. END FUNC
  183.  
  184.  
  185.  
  186.