home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / lisp / gcl-1.000 / gcl-1 / gcl-1.0 / lsp / module.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-05-10  |  2.9 KB  |  162 lines

  1.  
  2. #include <cmpinclude.h>
  3. #include "module.h"
  4. init_module(){do_init(VV);}
  5. /*    local entry for function PROVIDE    */
  6.  
  7. static object LI1(V2)
  8.  
  9. object V2;
  10. {     VMB1 VMS1 VMV1
  11. TTL:;
  12.     base[0]= coerce_to_string((V2));
  13.     base[1]= symbol_value(VV[0]);
  14.     base[2]= VV[1];
  15.     base[3]= symbol_function(VV[11]);
  16.     vs_top=(vs_base=base+0)+4;
  17.     Ladjoin();
  18.     vs_top=sup;
  19.     setq(VV[0],vs_base[0]);
  20.     {object V3 = symbol_value(VV[0]);
  21.     VMR1(V3)}
  22. }
  23. /*    local entry for function REQUIRE    */
  24.  
  25. static object LI2(V4,va_alist)
  26.     object V4;
  27.     va_dcl 
  28. {    
  29.     va_list ap;
  30.     int narg = VFUN_NARGS; VMB2 VMS2 VMV2
  31.     bds_check;
  32.     {object V5;
  33.     object V6;
  34.     if(narg <1) too_few_arguments();
  35.     V5= V4;
  36.     narg = narg - 1;
  37.     if (narg <= 0) goto T6;
  38.     else {
  39.     va_start(ap);
  40.     V6= va_arg(ap,object);}
  41.     --narg; goto T7;
  42. T6:;
  43.     base[0]= coerce_to_string((V5));
  44.     vs_top=(vs_base=base+0)+1;
  45.     Lstring_downcase();
  46.     vs_top=sup;
  47.     V6= vs_base[0];
  48. T7:;
  49.     bds_bind(VV[2],VV[3]);
  50.     base[1]= coerce_to_string((V5));
  51.     base[2]= symbol_value(VV[0]);
  52.     base[3]= VV[1];
  53.     base[4]= symbol_function(VV[11]);
  54.     vs_top=(vs_base=base+1)+4;
  55.     Lmember();
  56.     vs_top=sup;
  57.     if((vs_base[0])!=Cnil){
  58.     goto T11;}
  59.     if(!(type_of((V6))!=t_cons)){
  60.     goto T18;}
  61.     base[1]= (V6);
  62.     vs_top=(vs_base=base+1)+1;
  63.     (void) (*Lnk12)();
  64.     vs_top=sup;
  65.     {object V7 = vs_base[0];
  66.     bds_unwind1;
  67.     VMR2(V7)}
  68. T18:;
  69.     {register object V8;
  70.     V8= (V6);
  71. T22:;
  72.     if(!(endp((V8)))){
  73.     goto T23;}
  74.     {object V9 = Cnil;
  75.     bds_unwind1;
  76.     VMR2(V9)}
  77. T23:;
  78.     base[1]= car((V8));
  79.     vs_top=(vs_base=base+1)+1;
  80.     (void) (*Lnk12)();
  81.     vs_top=sup;
  82.     V8= cdr((V8));
  83.     goto T22;}
  84. T11:;
  85.     {object V10 = Cnil;
  86.     bds_unwind1;
  87.     VMR2(V10)}}
  88.     }
  89. /*    local entry for function DOCUMENTATION    */
  90.  
  91. static object LI3(V13,V14)
  92.  
  93. register object V13;object V14;
  94. {     VMB3 VMS3 VMV3
  95. TTL:;
  96.     {object V15= (V14);
  97.     if((V15!= VV[13]))goto T32;
  98.     {object V16 = get((V13),VV[4],Cnil);
  99.     VMR3(V16)}
  100. T32:;
  101.     if((V15!= VV[14]))goto T33;
  102.     {object V17 = get((V13),VV[5],Cnil);
  103.     VMR3(V17)}
  104. T33:;
  105.     if((V15!= VV[15]))goto T34;
  106.     {object V18 = get((V13),VV[6],Cnil);
  107.     VMR3(V18)}
  108. T34:;
  109.     if((V15!= VV[16]))goto T35;
  110.     {object V19 = get((V13),VV[7],Cnil);
  111.     VMR3(V19)}
  112. T35:;
  113.     if((V15!= VV[17]))goto T36;
  114.     {object V20 = get((V13),VV[8],Cnil);
  115.     VMR3(V20)}
  116. T36:;
  117.     base[0]= VV[9];
  118.     base[1]= (V14);
  119.     vs_top=(vs_base=base+0)+2;
  120.     Lerror();
  121.     vs_top=sup;
  122.     {object V21 = vs_base[0];
  123.     VMR3(V21)}}
  124. }
  125. /*    local entry for function FIND-DOCUMENTATION    */
  126.  
  127. static object LI4(V23)
  128.  
  129. register object V23;
  130. {     VMB4 VMS4 VMV4
  131. TTL:;
  132.     if(endp((V23))){
  133.     goto T39;}
  134.     if(!(endp(cdr((V23))))){
  135.     goto T40;}
  136. T39:;
  137.     {object V24 = Cnil;
  138.     VMR4(V24)}
  139. T40:;
  140.     {register object V25;
  141.     base[0]= car((V23));
  142.     vs_top=(vs_base=base+0)+1;
  143.     Lmacroexpand();
  144.     vs_top=sup;
  145.     V25= vs_base[0];
  146.     if(!(type_of((V25))==t_string)){
  147.     goto T47;}
  148.     {object V26 = (V25);
  149.     VMR4(V26)}
  150. T47:;
  151.     if(!(type_of((V25))==t_cons)){
  152.     goto T50;}
  153.     if(!((car((V25)))==(VV[10]))){
  154.     goto T50;}
  155.     V23= cdr((V23));
  156.     goto TTL;
  157. T50:;
  158.     {object V27 = Cnil;
  159.     VMR4(V27)}}
  160. }
  161. static LnkT12(){ call_or_link(VV[12],&Lnk12);} /* LOAD */
  162.