% % this is another of this put method % add the token to builder % ".|*|(" ^_builder !builder % % isolate the parameters for this function call % ");" slice exch % % stack: [ put-method . . . ] right-of-func-call func-params % % check how many parameters exist for the call % "," second Str.Found + !parameters % % cycle through each parameter, checking for ctid functions % 0 !parameter { isnull ? "," slice exch % % stack: [ put-method . . . ] right-of rem-params param % "cTID(" slice % % stack: [ put-method . . . ] right-of rem-params left-of-tid right-of-tid % isnull { % % no ctid in this parameter % check for stid type parameter % _putnode !\ second "sTID(" slice isnull { pop2 %%% "Value" newchild second trim _\\ &"," second '"""' "-" replall '"' "_" replall & !\\ dup _objlist <> { "Object" \! exch ^"OBJ(" &"," _ident & &")" exch } { dup numeric { "Value" \! exch ^"VAL(" &"," _ident & &")" exch } { "Constant" \! exch ^"CONST(" &"," _ident & &")" exch } ifelse } ifelse } { pop2nd ")" Str.Left -1 left -1 right _\\ &"," ^ !\\ %%% newchild } ifelse empty } { % % ctid exists for this parameter % ")" slice exch % % stack: [ put-method . . . ] right-of rem-params left-of-tid right-ctid-body ctid-parameter % -1 left -1 right *jspmpres % % stack: put-method right-of rem-params left-of-tid right-ctid-body empty % _putmeth "jspmanlm" look { % % parameter type lookup yields results % } { "Key" } ifelse *jspmanls _Pho.Name any? not { _Pho.NameB any? not { _Pho.NameA } if } if "phon " log)( any? { % % insert the class.name string that replaces the code % %%% _putnode !\ dup newchild dup _\\ &"," ^ !\\ _Pho.Class dup < |Allz pop "Other" > pop ^"PS" &"." ^ _duplicates second { !duplicates dup !clasgn &" = cTID('" &_symbol &"');" &; ^_presect !presect } { !clasgn } ifelse _clasgn } { % % did not match an existing code in the symbols % put the original back in the builder % _putnode !\ "cTID('" &_symbol &"')" %%% dup newchild dup _\\ &"," ^ !\\ } ifelse } ifelse % % stack: [ put-method . . . ] right-of rem-params left-of-tid right-ctid-body adj-param % % put this parameter into builder % ^ & _parameter positive { ^"," } if +:parameter % % stack: [ put-method . . . ] right-of rem-params adj-parameter % ^_builder !builder % % stack: [ put-method . . . ] right-of rem-params % } loop pop % % stack: right-of %