Recent

Author Topic: How to nest: functional IF  (Read 1111 times)

d2010

  • Sr. Member
  • ****
  • Posts: 264
How to nest: functional IF
« on: August 04, 2025, 11:46:16 am »
Still waiting for it!  ;D
Jamie

Code: [Select]
/*c2s:
       u=str_wcmatch(c129,"*[>]*");
       n=(u)?strcase(n128):n128,
       c=strcase(substr(c129,1,1));

       a=dfn_var_isint(y124);
       a=(numberp(y124))? (a && 07):nil;
       $rr=(a)?nth(a,lfb):"";
*/

Code: [Select]
(defun dfn_dcl_oneselI_eact(v /)
/*c2s: v=(sc=="u")?strcase(v):(sc=="l")?strcase(v,t):v;
       li=dfn_list_getindex(list(v),lst);
       if (li>0) { li=li-1;dfn_dcl_oneselI_lact();}
            else { set_tile("error",me);li=oi;};
       dfn_dcl_oneselq();
*/)
C:Q1 = How to much decrease the stack the lines from 11  to 23?
-or -
C:Q2=How to calculate Stack_index anytime? (definition Stack == ESP)
I need insert before line12 and I need put after the line24,?
 Stack_Downto..to bellow..=
This C+ is worst, try
Code: Pascal  [Select][+][-]
  1. Function kPosterizeEffect_kif_try(var tokstr:string;kRTDote:boolean;var ace22:tara_idaloadintv6):integer;
  2. Var aoc:char;
  3.     a359,adio:integer;
  4.     adui,axlock:record h:integer;end;
  5.     bCanExit:integer;
  6. Label CircularThreadEdgeDisplayType;
  7. Begin
  8.       result:=RTNONE;
  9.       a359:=getmypid[1].lo;
  10.       with acet_cip03dcl do
  11.       axlock.h:=if_int(d349_jc_aro10debugger_i10='1',10,
  12.                 if_int(d349_jc_aro20debugger_i20='1',20,
  13.                 if_int(d349_jc_ldc11addtable_i11='1',11,
  14.                 if_int(acet_cip03dcl.d349_jc_tabelamplasament_i14='1',14,
  15.                 if_int(d340_jc_pin15password_i15='1',15,
  16.                 if_int(d349_jc_pin25kOsmode_i25='1',25,
  17.                 if_int(d349_jc_goto_i15='1',-1005,
  18.                 if_int(d349_jc_ior_i16='1',16,
  19.                 if_int(d349_jc_lda18addtableldata_i18='1',18,
  20.                 if_int(d349_jc_lda28addtableldata_i28='1',28,
  21.                 if_int(d349_jc_ldc31kDebugPrint_i31='1',31,
  22.                 if_int(d349_jc_dup35jReleaseApply_i35='1',35,
  23.                 if_int(d349_jc_tpu45jDebugStop1st_i45='1',45,0)))))))))))));
  24.      if (axlock.h=0) then
  25.         Case 2011 of
  26.             2010: Begin tokstr:=tokstr+';|f'+inttostr(a359)+'|;';exit;End;
  27.             2011: exit;
  28.           End
  29.       else result:=RTDOTE;
  30.      tokstr:=trim(tokstr);
  31.      adio:=length(tokstr);
  32.      if (adio<4) then exit;
  33.      if (acet_cip03dcl.d349_jc_ior_i16='1') then
  34.          Begin Case 2010 of
  35.                   2010:if (pos('"'+tokstr,coreslsp_kBloomIntensity)>0) then axlock.h:=-16;
  36.                   2011: exit;
  37.                   2012: goto CircularThreadEdgeDisplayType;
  38.                 End;
  39.          End;
  40.      if (pos('"'+tokstr+'"',coreslsp_kBloomIntensity)>0) then exit
  41.         else h_acgi.if_ftp(pchar(coreslsp_eNusuntPermiseAcesteFunctii));
  42.      with php_magicconst do
  43.      if (length(inp[62])=length(batasm_runtime_call_init)) and
  44.           (inp[62]=batasm_runtime_call_init) then
  45.               exit;
  46.      if (pos('"'+tokstr,coreslsp_kPosterizeEffect)>0) then exit;
  47. CircularThreadEdgeDisplayType:
  48.  
  49.      if (jcs_fcmplast.isInsideLambda>0) then exit;//rem: toate functiile interioare lambda sunt dezactivate
  50.      inc(pidtid.setmypid);
  51.      aoc:=chr((pidtid.setmypid div 1000)+67);
  52.      adio:=pidtid.setmypid and 1023;
  53.      if (adio>=34) then romania:='11111111111111111';
  54.      Case axlock.h of
  55. //<mdebug>
  56.       10 :Begin tokstr:=concat('jc_aro10 (list "',aoc,kDigits13[adio],trim(tokstr),'" ');
  57.                 if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');exit;
  58.             End;
  59.  
  60.       20:  Begin if (jcs_fcmplast.isInside20<>0) and
  61.                   (js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  62.                  Case 2011 of
  63.                    2010: tokstr:=concat('jc_aro20 "',aoc,kDigits13[adio],trim(tokstr),'" (list ');
  64.                    2011: tokstr:=concat('jc_aro20 "',aoc,kDigits13[adio],trim(tokstr),'";|g',inttostr(a359),'|;(list ');
  65.                  End;
  66.                  if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  67.                  exit;
  68.             End;
  69.  
  70.  
  71.       11:  if (tokstr<>'') then
  72.              Begin if (jcs_fcmplast.isInside11<>0)and(js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  73.                   adui.h:=sho_crcserial16(tokstr,'2');
  74.                   if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  75.                       Case 2011 of
  76.                           2010: tokstr:=concat('jc_ldc11 "0x',inttohex(adui.h,4),':',inttostr(getmypid[1].lo),'" (list ');
  77.                           2011: tokstr:=concat('jc_ldc11 "0x',inttohex(adui.h,4),'" (list ');
  78.                        End;
  79.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  80.              End;
  81.       14:  Begin tokstr:=concat('jc_iload "',aoc,kDigits13[adio],trim(tokstr),'" (list ');
  82.                  if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');exit;
  83.            End;
  84.       -1005: Begin
  85.                 if (jcs_fcmplast.isInside15<>0) then exit;
  86.                   Case 2011 of
  87.                    2010:  tokstr:=concat('jc_ifgt "',aoc,kDigits13[adio],'" "',trim(tokstr),'" (list ');
  88.                    2011:  tokstr:=concat('jc_ifgt "',aoc,kDigits13[adio],';|<',inttostr(getmypid[1].lo),'|;" "',trim(tokstr),'" (list ');
  89.                   End;
  90.                  if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  91.          End;
  92.  
  93.       15:  if (tokstr<>'') then
  94.              Begin if (jcs_fcmplast.isInside15<>0)and(js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  95.                   adui.h:=sho_crcserial16(tokstr,'2');
  96.                   if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  97.                       Case 2011 of
  98.                           2010: tokstr:=concat('jc_pin15 "',inttohex(adui.h,4),'$',inttostr(getmypid[1].lo),'" (list ');
  99.                           2011: tokstr:=concat('jc_pin15 ',inttostr(adui.h xor jc_swapassword.isPinCode15),' (list ');
  100.                        End;
  101.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  102.              End;
  103.  
  104.       16: Begin
  105.               if (jcs_fcmplast.isInside16[length(jcs_fcmplast.isInside16)]='1') then exit;
  106.                   Case 2011 of
  107.                     2011:  tokstr:=concat('jc_ior "',aoc,kDigits13[adio],trim(tokstr),'" (list ');
  108.                   End;//off-(jc_ior
  109.                  if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  110.          End;
  111.  
  112.       18:  if (tokstr<>'') then
  113.              Begin if (jcs_fcmplast.isInside18<>0)and(js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  114.                       adui.h:=sho_crcserial16(tokstr,'2');
  115.            if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  116.                       Case 2011 of
  117.                           2010: tokstr:=concat('jc_lda18 "0x',inttohex(adui.h,4),':',inttostr(getmypid[1].lo),'" (list ');
  118.                           2011: tokstr:=concat('jc_lda18 "',inttohex(adui.h,4),'" (list ');
  119.                        End;
  120.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  121.           End;
  122.  
  123.       25:  if (tokstr<>'') then
  124.              Begin if (jcs_fcmplast.isInside25<>0)and(js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  125.                   adui.h:=sho_crcserial16(tokstr,'2');
  126.                   if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  127.                       Case 2011 of
  128.                           2010: tokstr:=concat('jc_pin25 "',inttohex(adui.h,4),'$',inttostr(getmypid[1].lo),'" (list ');
  129.                           2011: tokstr:=concat('jc_pin25 ',inttostr(adui.h xor jc_swapassword.isPinCode25),' (list ');
  130.                        End;
  131.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  132.              End;
  133.  
  134.       28:  if (tokstr<>'') then  
  135.              Begin if (jcs_fcmplast.isInside28<>0)and(js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  136.                   adui.h:=sho_crcserial16(tokstr,'2');
  137.                   if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  138.                       Case 2010 of
  139.                           2010: tokstr:=concat('jc_lda28 (list "0x',inttohex(adui.h,4),':',inttostr(getmypid[1].lo),'" ');
  140.                           2011: tokstr:=concat('jc_lda28 (list "',inttohex(adui.h,4),'" ');
  141.                        End;
  142.              End;
  143.  
  144.       31:  if (tokstr<>'') then
  145.              Begin if (jcs_fcmplast.isInside31<>0)and(js_drem(true,pchar(coremdel_abortDeepClone))) then exit;
  146.                   adui.h:=sho_crcserial16(tokstr,'2');
  147.                   if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  148.                       Case 2011 of
  149.                           2010: tokstr:=concat('jc_ldc31 "',inttohex(adui.h,4),'$',inttostr(getmypid[1].lo),'" (list ');
  150.                           2011: tokstr:=concat('jc_ldc31 "0x',inttohex(adui.h,4),':',aoc,kDigits13[adio],'" (list ');
  151.                        End;
  152.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  153.              End;
  154. {--}
  155.  
  156.       35:  if (tokstr<>'') then
  157.              Begin adui.h:=sho_crcserial16(tokstr,'2');
  158.                   if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  159.                       Case 2011 of
  160.                           2010: tokstr:=concat('jc_dup35 "',inttohex(adui.h,4),'$',inttostr(getmypid[1].lo),'" (list ');
  161.                           2011: tokstr:=concat('jc_dup35 "0x',inttohex(adui.h,4),':',aoc,kDigits13[adio],'" (list ');
  162.                        End;
  163.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  164.              End;
  165.  
  166.       45:  if (tokstr<>'') then
  167.              Begin adui.h:=sho_crcserial16(tokstr,'2');
  168.                if (kBloomThreshold_kif_try(ace22,aloword(adui.h),tokstr)<0) then exit;
  169.                       Case 2011 of
  170.                           2010: tokstr:=concat('jc_tpu45 "',inttohex(adui.h,4),'$',inttostr(getmypid[1].lo),'" (list ');
  171.                           2011: tokstr:=concat('jc_tpu45 "0x',inttohex(adui.h,4),':',aoc,kDigits13[adio],'" (list ');
  172.                        End;
  173.                    if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  174.              End;
  175. {--}
  176.       -16: Begin  if (jcs_fcmplast.isInside16[length(jcs_fcmplast.isInside16)]='1') then exit;
  177.                   Case 2010 of
  178.                    2010:  tokstr:=concat('if (< setmypid "',aoc,kDigits13[adio],'") (',trim(tokstr));
  179.                   End;
  180.                  if (kRTDote=false) then tokstr:=concat(tokstr,'nil ');
  181.          End;
  182.      End;
  183. End;
  184.  
Eu multumesc tie ! Ilie lacatusu. Doamne milueste-ne.

« Last Edit: August 04, 2025, 12:05:16 pm by d2010 »

jamie

  • Hero Member
  • *****
  • Posts: 7773
Re: How to nest: functional IF
« Reply #1 on: August 06, 2025, 01:28:29 am »
You need to place all of those defines in a Const Record that has all of those entries or create a dynamic stack of those types.

Then use that function in a loop starting with the last one you placed in and go backwards.

 its a Tree.

Jamie

The only true wisdom is knowing you know nothing

 

TinyPortal © 2005-2018