home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / languages / pot / potsrc / lib / c / Strings next >
Text File  |  1995-02-21  |  10KB  |  367 lines

  1. /* This code is generated by pOt. */
  2. #line 3 "strings.mod"
  3.  
  4. #line 3 "strings.mod"
  5. #include <pOtRTL.h>
  6. #line 3 "strings.mod"
  7.  
  8. #line 3 "strings.mod"
  9. #ifdef __riscos
  10. #include "hi.Strings"
  11. #else
  12. #include "Strings.hi"
  13. #endif
  14. #line 3 "strings.mod"
  15.  
  16. #line 3 "strings.mod"
  17.  
  18. #line 3 "strings.mod"
  19.  
  20. #line 3 "strings.mod"
  21.  
  22. #line 3 "strings.mod"
  23. static struct {void *next, *vars[0x1];} pOt__gc_ptrs = {pOt_NIL,{
  24. #line 3 "strings.mod"
  25.   pOt_NIL
  26. #line 3 "strings.mod"
  27. }};
  28. #line 3 "strings.mod"
  29. static struct {void *next, *vars[0x1];} pOt__gc_strs = {&pOt__gc_ptrs,{
  30. #line 3 "strings.mod"
  31.   pOt_NIL
  32. #line 3 "strings.mod"
  33. }};
  34. #line 3 "strings.mod"
  35.  
  36. #line 3 "strings.mod"
  37.  
  38. #line 5 "strings.mod"
  39.  
  40. #line 5 "strings.mod"
  41.  
  42. #line 5 "strings.mod"
  43. extern pOt_LONGINT pOt_Length_Strings
  44. #line 5 "strings.mod"
  45. #if pOt__ANSI_C
  46. #line 5 "strings.mod"
  47.   (pOt__DynArr *pOt_s)
  48. #line 5 "strings.mod"
  49. #else
  50. #line 5 "strings.mod"
  51.   (pOt_s)
  52. #line 5 "strings.mod"
  53.   pOt__DynArr *pOt_s;
  54. #line 5 "strings.mod"
  55.  
  56. #line 5 "strings.mod"
  57. #endif
  58. #line 5 "strings.mod"
  59. {
  60. #line 5 "strings.mod"
  61.   pOt_LONGINT pOt__retval;
  62. #line 5 "strings.mod"
  63.   pOt_LONGINT pOt_l;
  64. #line 5 "strings.mod"
  65.   int pOt__gc_enabled_prev;
  66. #line 5 "strings.mod"
  67.   pOt__gc_enabled_prev=pOt__gc_enabled;
  68. #line 5 "strings.mod"
  69.   pOt__gc_enabled=0;
  70. #line 5 "strings.mod"
  71.  
  72. #line 5 "strings.mod"
  73.   pOt_l=(pOt_LONGINT)(0);
  74. #line 5 "strings.mod"
  75.   for(;;) {
  76. #line 5 "strings.mod"
  77.     if(((unsigned char) (*((pOt_CHAR*)(((char *)pOt_s+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_s))->nofel,pOt_l)))))!=(unsigned char)'\0')); else break;
  78. #line 5 "strings.mod"
  79.     pOt_l+=(1);
  80. #line 5 "strings.mod"
  81.   }
  82. #line 5 "strings.mod"
  83.   pOt__retval =(pOt_LONGINT)(pOt_l);
  84.   goto pOt__Epilogue;
  85. #line 6 "strings.mod"
  86.  
  87. #line 6 "strings.mod"
  88.   pOt__halt(__FILE__,__LINE__,0x11);
  89. #line 6 "strings.mod"
  90. pOt__Epilogue:;
  91. #line 6 "strings.mod"
  92.   pOt__gc_enabled=pOt__gc_enabled_prev;
  93. #line 6 "strings.mod"
  94.   pOt__rm_par((pOt__TypDsc**)pOt_s);
  95. #line 6 "strings.mod"
  96.   return pOt__retval;
  97. #line 6 "strings.mod"
  98. }
  99. #line 6 "strings.mod"
  100.  
  101. #line 6 "strings.mod"
  102.  
  103. #line 10 "strings.mod"
  104.  
  105. #line 10 "strings.mod"
  106.  
  107. #line 10 "strings.mod"
  108. extern void pOt_Append_Strings
  109. #line 10 "strings.mod"
  110. #if pOt__ANSI_C
  111. #line 10 "strings.mod"
  112.   (pOt__DynArr *pOt_s, pOt__DynArr *pOt_tail)
  113. #line 10 "strings.mod"
  114. #else
  115. #line 10 "strings.mod"
  116.   (pOt_s, pOt_tail)
  117. #line 10 "strings.mod"
  118.   pOt__DynArr *pOt_s;
  119. #line 10 "strings.mod"
  120.   pOt__DynArr *pOt_tail;
  121. #line 10 "strings.mod"
  122.  
  123. #line 10 "strings.mod"
  124. #endif
  125. #line 10 "strings.mod"
  126. {
  127. #line 10 "strings.mod"
  128.   pOt_LONGINT pOt_i, pOt_j;
  129. #line 10 "strings.mod"
  130.   struct {void*next;} pOt__gc_ptrs;
  131. #line 10 "strings.mod"
  132.   pOt__gc_ptrs.next = pOt__gc_root;
  133. #line 10 "strings.mod"
  134.  
  135. #line 10 "strings.mod"
  136.   pOt_i=(pOt_LONGINT)(0);
  137.   for(;;) {
  138. #line 11 "strings.mod"
  139.     if(((unsigned char) (*((pOt_CHAR*)(((char *)pOt_s+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_s))->nofel,pOt_i)))))!=(unsigned char)'\0')); else break;
  140. #line 11 "strings.mod"
  141.     pOt_i+=(1);
  142. #line 11 "strings.mod"
  143.   }
  144. #line 11 "strings.mod"
  145.   pOt_j=(pOt_LONGINT)(pOt_i);
  146. #line 11 "strings.mod"
  147.   for(;;) {
  148. #line 13 "strings.mod"
  149.     (*((pOt_CHAR*)(((char *)pOt_s+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_s))->nofel,pOt_i)))))=(*((pOt_CHAR*)(((char *)pOt_tail+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_tail))->nofel,(pOt_LONGINT)pOt__subchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_i),(pOt_LONGINT)(pOt_j),6))))));
  150. #line 13 "strings.mod"
  151.     if(((unsigned char) (*((pOt_CHAR*)(((char *)pOt_s+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_s))->nofel,pOt_i)))))==(unsigned char)'\0')) {
  152.       goto pOt__LoopLabel_1;
  153. #line 14 "strings.mod"
  154.     }
  155. #line 14 "strings.mod"
  156.     pOt_i+=(1);
  157. #line 16 "strings.mod"
  158.   }
  159. #line 16 "strings.mod"
  160. pOt__LoopLabel_1:;
  161. #line 16 "strings.mod"
  162.  
  163. pOt__Epilogue:;
  164. #line 17 "strings.mod"
  165.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  166. #line 17 "strings.mod"
  167.   pOt__rm_par((pOt__TypDsc**)pOt_tail);
  168. #line 17 "strings.mod"
  169. }
  170. #line 17 "strings.mod"
  171.  
  172. #line 17 "strings.mod"
  173.  
  174. #line 23 "strings.mod"
  175.  
  176. #line 23 "strings.mod"
  177. static pOt_LONGINT (*pOt_li_FromLInt_Strings);
  178. #line 23 "strings.mod"
  179. static pOt_SHORTINT (*pOt_Base_FromLInt_Strings);
  180. #line 23 "strings.mod"
  181. static pOt__DynArr *pOt_s_FromLInt_Strings;
  182. #line 23 "strings.mod"
  183. static pOt_INTEGER (*pOt_i_FromLInt_Strings);
  184. #line 23 "strings.mod"
  185.  
  186. #line 23 "strings.mod"
  187. extern void pOt_FromLInt_Strings pOt__ARGS((pOt_LONGINT , pOt_SHORTINT , pOt__DynArr *));
  188. #line 23 "strings.mod"
  189.  
  190. #line 23 "strings.mod"
  191.  
  192. #line 25 "strings.mod"
  193.  
  194. #line 25 "strings.mod"
  195.  
  196. #line 25 "strings.mod"
  197. static void pOt_Tail_FromLInt_Strings
  198. #line 25 "strings.mod"
  199. #if pOt__ANSI_C
  200. #line 25 "strings.mod"
  201.   (pOt_LONGINT pOt_li)
  202. #line 25 "strings.mod"
  203. #else
  204. #line 25 "strings.mod"
  205.   (pOt_li)
  206. #line 25 "strings.mod"
  207.   pOt_LONGINT pOt_li;
  208. #line 25 "strings.mod"
  209.  
  210. #line 25 "strings.mod"
  211. #endif
  212. #line 25 "strings.mod"
  213. {
  214. #line 25 "strings.mod"
  215.   struct {void*next;} pOt__gc_ptrs;
  216. #line 25 "strings.mod"
  217.   pOt__gc_ptrs.next = pOt__gc_root;
  218. #line 25 "strings.mod"
  219.  
  220. #line 25 "strings.mod"
  221.   if(( pOt_li>=((pOt_LONGINT)((*pOt_Base_FromLInt_Strings))))) {
  222.     pOt_Tail_FromLInt_Strings((pOt_LONGINT)((pOt_LONGINT)pOt__divchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_li),(pOt_LONGINT)((*pOt_Base_FromLInt_Strings)),6)));
  223. #line 26 "strings.mod"
  224.     pOt_li=(pOt_LONGINT)((pOt_LONGINT)pOt__modchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_li),(pOt_LONGINT)((*pOt_Base_FromLInt_Strings)),6));
  225. #line 26 "strings.mod"
  226.   }
  227. #line 26 "strings.mod"
  228.   if(( pOt_li<((pOt_LONGINT)(10)))) {
  229.     (*((pOt_CHAR*)(((char *)pOt_s_FromLInt_Strings+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_s_FromLInt_Strings))->nofel,(*pOt_i_FromLInt_Strings))))))=(pOt_CHAR)pOt__rngchk_cn(__FILE__,__LINE__,(unsigned char)((pOt_LONGINT)pOt__addchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_li),(pOt_LONGINT)(48),6)));
  230.   } else {
  231. #line 28 "strings.mod"
  232.     (*((pOt_CHAR*)(((char *)pOt_s_FromLInt_Strings+sizeof(pOt__ArrTypDsc*)+sizeof(pOt_CHAR)*pOt__inxchk(__FILE__,__LINE__,(*(pOt_s_FromLInt_Strings))->nofel,(*pOt_i_FromLInt_Strings))))))=(pOt_CHAR)pOt__rngchk_cn(__FILE__,__LINE__,(unsigned char)((pOt_LONGINT)pOt__addchk(__FILE__,__LINE__,(pOt_LONGINT)((pOt_LONGINT)pOt__subchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_li),(pOt_LONGINT)(10),6)),(pOt_LONGINT)(65),6)));
  233.   }
  234. #line 29 "strings.mod"
  235.   (*pOt_i_FromLInt_Strings)+=(1);
  236. #line 31 "strings.mod"
  237.  
  238. #line 31 "strings.mod"
  239. pOt__Epilogue:;
  240. #line 31 "strings.mod"
  241.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  242. #line 31 "strings.mod"
  243. }
  244. #line 31 "strings.mod"
  245.  
  246. #line 31 "strings.mod"
  247. extern void pOt_FromLInt_Strings
  248. #line 33 "strings.mod"
  249. #if pOt__ANSI_C
  250. #line 33 "strings.mod"
  251.   (pOt_LONGINT pOt_li, pOt_SHORTINT pOt_Base, pOt__DynArr *pOt_s)
  252. #line 33 "strings.mod"
  253. #else
  254. #line 33 "strings.mod"
  255.   (pOt_li, pOt_Base, pOt_s)
  256. #line 33 "strings.mod"
  257.   pOt_LONGINT pOt_li;
  258. #line 33 "strings.mod"
  259.   pOt_SHORTINT pOt_Base;
  260. #line 33 "strings.mod"
  261.   pOt__DynArr *pOt_s;
  262. #line 33 "strings.mod"
  263.  
  264. #line 33 "strings.mod"
  265. #endif
  266. #line 33 "strings.mod"
  267. {
  268. #line 33 "strings.mod"
  269.   pOt_LONGINT (*pOt_li_);
  270. #line 33 "strings.mod"
  271.   pOt_SHORTINT (*pOt_Base_);
  272. #line 33 "strings.mod"
  273.   pOt__DynArr *pOt_s_;
  274. #line 33 "strings.mod"
  275.   pOt_INTEGER pOt_i, (*pOt_i_);
  276. #line 33 "strings.mod"
  277.   struct {void*next;} pOt__gc_ptrs;
  278. #line 33 "strings.mod"
  279.   pOt__gc_ptrs.next = pOt__gc_root;
  280. #line 33 "strings.mod"
  281.   pOt_li_=pOt_li_FromLInt_Strings;
  282. #line 33 "strings.mod"
  283.   pOt_li_FromLInt_Strings=&pOt_li;
  284. #line 33 "strings.mod"
  285.   pOt_Base_=pOt_Base_FromLInt_Strings;
  286. #line 33 "strings.mod"
  287.   pOt_Base_FromLInt_Strings=&pOt_Base;
  288. #line 33 "strings.mod"
  289.   pOt_s_=pOt_s_FromLInt_Strings;
  290. #line 33 "strings.mod"
  291.   pOt_s_FromLInt_Strings=pOt_s;
  292. #line 33 "strings.mod"
  293.   pOt_i_=pOt_i_FromLInt_Strings;
  294. #line 33 "strings.mod"
  295.   pOt_i_FromLInt_Strings=&pOt_i;
  296. #line 33 "strings.mod"
  297.  
  298. #line 33 "strings.mod"
  299.   pOt_i=(pOt_INTEGER)(0);
  300.   if(( pOt_li<((pOt_LONGINT)(0)))) {
  301. #line 36 "strings.mod"
  302.     if(( pOt_Base==10)) {
  303.       (*((pOt_CHAR*)(((char *)pOt_s+sizeof(pOt__ArrTy