Annotation of OpenXM/src/k097/slib.sm1, Revision 1.8
1.1 maekawa 1: K00_verbose %% if-condition
2: { %%ifbody
3: ( slib.k (slib.ccc): 8/17,1996, 3/4 -- 3/10,1997 ) message }%%end if if body
4: { %%if- else part
5: } ifelse
6: [ ] /Helplist set
7: /HelpAdd {
8: db.DebugStack setstack $In function : HelpAdd of class PrimitiveObject$ stdstack
9: /Arglist set /Argthis set /FunctionValue [ ] def
1.8 ! takayama 10: [/this /s /category ] /ArgNames set ArgNames pushVariables [ %%function body
1.1 maekawa 11: [Argthis] Arglist join ArgNames mapset
1.8 ! takayama 12: [ %%start of local variables
! 13: /n ] pushVariables [ %%local variables
! 14: this [ %% function args
! 15: Arglist ] {Length} sendmsg2
! 16: /n set
! 17: n (1).. lessThanOrEqual
! 18: %% if-condition
! 19: { %%ifbody
! 20: null /category set
! 21: }%%end if if body
! 22: { %%if- else part
! 23: } ifelse
! 24: true %% if-condition
! 25: { %%ifbody
! 26: n (1).. eq
! 27: n (2).. eq
! 28: or
! 29: not
! 30: %% if-condition
! 31: { %%ifbody
! 32: this [ %% function args
! 33: s ] {Println} sendmsg2
! 34: this [ %% function args
! 35: (HelpAdd: wrong argument length.) ] {Error} sendmsg2
! 36: }%%end if if body
! 37: { %%if- else part
! 38: } ifelse
! 39: this [ %% function args
! 40: category ] {Tag} sendmsg2
! 41: (0).. eq
! 42: this [ %% function args
! 43: category ] {Tag} sendmsg2
! 44: (5).. eq
! 45: or
! 46: not
! 47: %% if-condition
! 48: { %%ifbody
! 49: this [ %% function args
! 50: category ] {Println} sendmsg2
! 51: this [ %% function args
! 52: (HelpAdd: wrong category.) ] {Error} sendmsg2
! 53: }%%end if if body
! 54: { %%if- else part
! 55: } ifelse
! 56: this [ %% function args
! 57: s ] {Tag} sendmsg2
! 58: (6).. eq
! 59: not
! 60: %% if-condition
! 61: { %%ifbody
! 62: this [ %% function args
! 63: s ] {Println} sendmsg2
! 64: this [ %% function args
! 65: (HelpAdd: s must be an array.) ] {Error} sendmsg2
! 66: }%%end if if body
! 67: { %%if- else part
! 68: } ifelse
! 69: this [ %% function args
! 70: s [(0).. ] Get
! 71: ] {Tag} sendmsg2
! 72: (5).. eq
! 73: not
! 74: %% if-condition
! 75: { %%ifbody
! 76: this [ %% function args
! 77: s ] {Println} sendmsg2
! 78: this [ %% function args
! 79: (HelpAdd: s[0] must be a string.) ] {Error} sendmsg2
! 80: }%%end if if body
! 81: { %%if- else part
! 82: } ifelse
! 83: this [ %% function args
! 84: s [(1).. ] Get
! 85: ] {Tag} sendmsg2
! 86: (5).. eq
! 87: this [ %% function args
! 88: s [(1).. ] Get
! 89: ] {Tag} sendmsg2
! 90: (6).. eq
! 91: or
! 92: not
! 93: %% if-condition
! 94: { %%ifbody
! 95: this [ %% function args
! 96: s ] {Println} sendmsg2
! 97: this [ %% function args
! 98: (HelpAdd: s[1] must be a string or an array.) ] {Error} sendmsg2
! 99: }%%end if if body
! 100: { %%if- else part
! 101: } ifelse
! 102: }%%end if if body
! 103: { %%if- else part
! 104: } ifelse
! 105: [ category s ] /s set
1.1 maekawa 106: this [ %% function args
107: Helplist s ] {Append} sendmsg2
108: /Helplist set
1.8 ! takayama 109: /ExitPoint ]pop popVariables %%pop the local variables
1.1 maekawa 110: /ExitPoint ]pop popVariables %%pop argValues
111: db.DebugStack setstack pop stdstack
112: } def
113: %%end of function
114:
1.8 ! takayama 115: /Tag {
! 116: db.DebugStack setstack $In function : Tag of class PrimitiveObject$ stdstack
! 117: /Arglist set /Argthis set /FunctionValue [ ] def
! 118: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
! 119: [Argthis] Arglist join ArgNames mapset
! 120: [ %%start of local variables
! 121: /ans ] pushVariables [ %%local variables
! 122: f etag (universalNumber) dc /ans set
! 123: ans /FunctionValue set {/ExitPoint goto} exec %%return
! 124: /ExitPoint ]pop popVariables %%pop the local variables
! 125: /ExitPoint ]pop popVariables %%pop argValues
! 126: db.DebugStack setstack pop stdstack
! 127: FunctionValue } def
! 128: %%end of function
! 129:
! 130: /Error {
! 131: db.DebugStack setstack $In function : Error of class PrimitiveObject$ stdstack
! 132: /Arglist set /Argthis set /FunctionValue [ ] def
! 133: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
! 134: [Argthis] Arglist join ArgNames mapset
! 135: s error /ExitPoint ]pop popVariables %%pop argValues
! 136: db.DebugStack setstack pop stdstack
! 137: FunctionValue } def
! 138: %%end of function
! 139:
1.1 maekawa 140: /Print {
141: db.DebugStack setstack $In function : Print of class PrimitiveObject$ stdstack
142: /Arglist set /Argthis set /FunctionValue [ ] def
143: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
144: [Argthis] Arglist join ArgNames mapset
145: a messagen /ExitPoint ]pop popVariables %%pop argValues
146: db.DebugStack setstack pop stdstack
147: FunctionValue } def
148: %%end of function
149:
150: /Println {
151: db.DebugStack setstack $In function : Println of class PrimitiveObject$ stdstack
152: /Arglist set /Argthis set /FunctionValue [ ] def
153: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
154: [Argthis] Arglist join ArgNames mapset
155: a message /ExitPoint ]pop popVariables %%pop argValues
156: db.DebugStack setstack pop stdstack
157: FunctionValue } def
158: %%end of function
159:
160: /Ln {
161: db.DebugStack setstack $In function : Ln of class PrimitiveObject$ stdstack
162: /Arglist set /Argthis set /FunctionValue [ ] def
163: [/this ] /ArgNames set ArgNames pushVariables [ %%function body
164: [Argthis] ArgNames mapset
165: ( ) message /ExitPoint ]pop popVariables %%pop argValues
166: db.DebugStack setstack pop stdstack
167: FunctionValue } def
168: %%end of function
169:
170: /Poly {
171: db.DebugStack setstack $In function : Poly of class PrimitiveObject$ stdstack
172: /Arglist set /Argthis set /FunctionValue [ ] def
173: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
174: [Argthis] Arglist join ArgNames mapset
175: f (poly) data_conversion /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
176: db.DebugStack setstack pop stdstack
177: FunctionValue } def
178: %%end of function
179:
180: /PolyR {
181: db.DebugStack setstack $In function : PolyR of class PrimitiveObject$ stdstack
182: /Arglist set /Argthis set /FunctionValue [ ] def
183: [/this /f /r ] /ArgNames set ArgNames pushVariables [ %%function body
184: [Argthis] Arglist join ArgNames mapset
185: f r ,, /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
186: db.DebugStack setstack pop stdstack
187: FunctionValue } def
188: %%end of function
189:
190: /Degree {
191: db.DebugStack setstack $In function : Degree of class PrimitiveObject$ stdstack
192: /Arglist set /Argthis set /FunctionValue [ ] def
193: [/this /f /v ] /ArgNames set ArgNames pushVariables [ %%function body
194: [Argthis] Arglist join ArgNames mapset
195: f v degree (universalNumber) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
196: db.DebugStack setstack pop stdstack
197: FunctionValue } def
198: %%end of function
199:
200: /Append {
201: db.DebugStack setstack $In function : Append of class PrimitiveObject$ stdstack
202: /Arglist set /Argthis set /FunctionValue [ ] def
203: [/this /f /g ] /ArgNames set ArgNames pushVariables [ %%function body
204: [Argthis] Arglist join ArgNames mapset
205: this [ %% function args
206: f [ g ] ] {Join} sendmsg2
207: /FunctionValue set {/ExitPoint goto} exec %%return
208: /ExitPoint ]pop popVariables %%pop argValues
209: db.DebugStack setstack pop stdstack
210: FunctionValue } def
211: %%end of function
212:
213: /Length {
214: db.DebugStack setstack $In function : Length of class PrimitiveObject$ stdstack
215: /Arglist set /Argthis set /FunctionValue [ ] def
216: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
217: [Argthis] Arglist join ArgNames mapset
218: f length (universalNumber) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
219: db.DebugStack setstack pop stdstack
220: FunctionValue } def
221: %%end of function
222:
223: /Transpose {
224: db.DebugStack setstack $In function : Transpose of class PrimitiveObject$ stdstack
225: /Arglist set /Argthis set /FunctionValue [ ] def
226: [/this /mat ] /ArgNames set ArgNames pushVariables [ %%function body
227: [Argthis] Arglist join ArgNames mapset
228: mat transpose /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
229: db.DebugStack setstack pop stdstack
230: FunctionValue } def
231: %%end of function
232:
233:
234: /s.Indexed {
235: (integer) dc /arg2 set
236: /arg1 set
237: arg1 ([) arg2 (dollar) dc (]) 4 cat_n
238: } def
239:
240: /s.Indexed2 {
241: (integer) dc /arg3 set
242: (integer) dc /arg2 set
243: /arg1 set
244: arg1 ([) arg2 (dollar) dc (,) arg3 (dollar) dc (]) 6 cat_n
245: } def
246: /Groebner {
247: db.DebugStack setstack $In function : Groebner of class PrimitiveObject$ stdstack
248: /Arglist set /Argthis set /FunctionValue [ ] def
249: [/this /F ] /ArgNames set ArgNames pushVariables [ %%function body
250: [Argthis] Arglist join ArgNames mapset
251: F {[[(h). (1).]] replace homogenize} map /arg1 set
252: [arg1] groebner 0 get
253: /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
254: db.DebugStack setstack pop stdstack
255: FunctionValue } def
256: %%end of function
257:
258: /GroebnerTime {
259: db.DebugStack setstack $In function : GroebnerTime of class PrimitiveObject$ stdstack
260: /Arglist set /Argthis set /FunctionValue [ ] def
261: [/this /F ] /ArgNames set ArgNames pushVariables [ %%function body
262: [Argthis] Arglist join ArgNames mapset
263: F {[[(h). (1).]] replace homogenize} map /arg1 set
264: { [arg1] groebner 0 get } timer
265: /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
266: db.DebugStack setstack pop stdstack
267: FunctionValue } def
268: %%end of function
269:
270: /LiftStd {
271: db.DebugStack setstack $In function : LiftStd of class PrimitiveObject$ stdstack
272: /Arglist set /Argthis set /FunctionValue [ ] def
273: [/this /F ] /ArgNames set ArgNames pushVariables [ %%function body
274: [Argthis] Arglist join ArgNames mapset
275: F {[[(h). (1).]] replace homogenize} map /arg1 set
276: [arg1 [(needBack)]] groebner
277: /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
278: db.DebugStack setstack pop stdstack
279: FunctionValue } def
280: %%end of function
281:
282: /Reduction {
283: db.DebugStack setstack $In function : Reduction of class PrimitiveObject$ stdstack
284: /Arglist set /Argthis set /FunctionValue [ ] def
1.6 takayama 285: [/this /f /myset ] /ArgNames set ArgNames pushVariables [ %%function body
1.1 maekawa 286: [Argthis] Arglist join ArgNames mapset
1.6 takayama 287: [ %%start of local variables
288: /n /indexTable /set2 /i /j /tmp /t_syz /r /rng /vsize /tt ] pushVariables [ %%local variables
289: null /vsize set
290: this [ %% function args
291: this [ %% function args
292: (1) ] {Poly} sendmsg2
293: ] {GetRing} sendmsg2
294: /r set
295: this [ %% function args
296: f ] {GetRing} sendmsg2
297: /rng set
298: this [ %% function args
299: rng ] {Tag} sendmsg2
300: (0).. eq
301: %% if-condition
302: { %%ifbody
303: this [ %% function args
304: myset ] {GetRing} sendmsg2
305: /rng set
306: }%%end if if body
307: { %%if- else part
308: } ifelse
309: this [ %% function args
310: rng ] {Tag} sendmsg2
311: (0).. eq not
312: %% if-condition
313: { %%ifbody
314: this [ %% function args
315: rng ] {SetRing} sendmsg2
316: }%%end if if body
317: { %%if- else part
318: } ifelse
319: this [ %% function args
320: f ] {IsArray} sendmsg2
321: %% if-condition
322: { %%ifbody
323: this [ %% function args
324: f ] {Length} sendmsg2
325: /vsize set
326: [f] fromVectors 0 get /f set }%%end if if body
327: { %%if- else part
328: } ifelse
329: this [ %% function args
330: myset ] {Length} sendmsg2
331: /n set
332: n (0).. gt
333: %% if-condition
334: { %%ifbody
335: this [ %% function args
336: myset [(0).. ] Get
337: ] {IsArray} sendmsg2
338: %% if-condition
339: { %%ifbody
340: vsize this [ %% function args
341: myset [(0).. ] Get
342: ] {Length} sendmsg2
343: eq not
344: %% if-condition
345: { %%ifbody
346: this [ %% function args
347: (Reduction: size mismatch.) ] {Error} sendmsg2
348: }%%end if if body
349: { %%if- else part
350: } ifelse
351: myset fromVectors /myset set }%%end if if body
352: { %%if- else part
353: } ifelse
354: }%%end if if body
355: { %%if- else part
356: } ifelse
357: this [ %% function args
358: n ] {NewArray} sendmsg2
359: /indexTable set
360: [ ] /set2 set
361: (0).. /j set
362: (0).. /i set
363: %%for init.
364: %%for
365: { i n lt
366: { } {exit} ifelse
367: [ {%%increment
368: /i i (1).. {add} sendmsg2 def
369: } %%end of increment{A}
370: {%%start of B part{B}
371: this [ %% function args
372: myset [i ] Get
373: ] {Tag} sendmsg2
374: (0).. eq
375: %% if-condition
376: { %%ifbody
377: indexTable [i ] (1).. (0).. 2 1 roll {sub} sendmsg
378: Put
379: }%%end if if body
380: { %%if- else part
381: myset [i ] Get
382: this [ %% function args
383: (0) ] {Poly} sendmsg2
384: eq
385: %% if-condition
386: { %%ifbody
387: indexTable [i ] (1).. (0).. 2 1 roll {sub} sendmsg
388: Put
389: }%%end if if body
390: { %%if- else part
391: this [ %% function args
392: set2 myset [i ] Get
393: ] {Append} sendmsg2
394: /set2 set
395: indexTable [i ] j Put
396: /j j (1).. {add} sendmsg2 def
397: } ifelse
398: } ifelse
399: } %% end of B part. {B}
400: 2 1 roll] {exec} map pop
401: } loop %%end of for
402: f set2 (gradedPolySet) dc reduction /tmp set this [ %% function args
403: n ] {NewArray} sendmsg2
404: /t_syz set
405: (0).. /i set
406: %%for init.
407: %%for
408: { i n lt
409: { } {exit} ifelse
410: [ {%%increment
411: /i i (1).. {add} sendmsg2 def
412: } %%end of increment{A}
413: {%%start of B part{B}
414: indexTable [i ] Get
415: (1).. (0).. 2 1 roll {sub} sendmsg
416: eq not
417: %% if-condition
418: { %%ifbody
419: t_syz [i ] tmp [(2).. indexTable [i ] Get
420: ] Get
421: Put
422: }%%end if if body
423: { %%if- else part
424: t_syz [i ] this [ %% function args
425: (0) ] {Poly} sendmsg2
426: Put
427: } ifelse
428: } %% end of B part. {B}
429: 2 1 roll] {exec} map pop
430: } loop %%end of for
431: this [ %% function args
432: vsize ] {Tag} sendmsg2
433: (0).. eq not
434: %% if-condition
435: { %%ifbody
436: tmp [(0).. ] Get
437: /tt set
438: [vsize (integer) dc tt] toVectors /tt set tmp [(0).. ] tt Put
439: }%%end if if body
440: { %%if- else part
441: } ifelse
442: this [ %% function args
443: r ] {SetRing} sendmsg2
444: [ tmp [(0).. ] Get
445: tmp [(1).. ] Get
446: t_syz ] /FunctionValue set {/ExitPoint goto} exec %%return
447: /ExitPoint ]pop popVariables %%pop the local variables
448: /ExitPoint ]pop popVariables %%pop argValues
1.1 maekawa 449: db.DebugStack setstack pop stdstack
450: FunctionValue } def
451: %%end of function
452:
453: /IntegerToSm1Integer {
454: db.DebugStack setstack $In function : IntegerToSm1Integer of class PrimitiveObject$ stdstack
455: /Arglist set /Argthis set /FunctionValue [ ] def
456: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
457: [Argthis] Arglist join ArgNames mapset
458: f (integer) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
459: db.DebugStack setstack pop stdstack
460: FunctionValue } def
461: %%end of function
462:
463: /RingD {
464: db.DebugStack setstack $In function : RingD of class PrimitiveObject$ stdstack
465: /Arglist set /Argthis set /FunctionValue [ ] def
466: [/this /vList /weightMatrix /pp ] /ArgNames set ArgNames pushVariables [ %%function body
467: [Argthis] Arglist join ArgNames mapset
468: [ %%start of local variables
469: /new0 /tmp /size /n /i /j /newtmp /ringpp /argsize ] pushVariables [ %%local variables
470: this [ %% function args
471: Arglist ] {Length} sendmsg2
472: /argsize set
473: argsize (1).. eq
474: %% if-condition
475: { %%ifbody
476: [ vList ring_of_differential_operators ( ) elimination_order 0 ] define_ring
1.4 takayama 477: /tmp set this [ %% function args
478: ] {SetRingVariables} sendmsg2
479: tmp /FunctionValue set {/ExitPoint goto} exec %%return
1.1 maekawa 480: }%%end if if body
481: { %%if- else part
482: } ifelse
483: argsize (2).. eq
484: %% if-condition
485: { %%ifbody
486: (0).. /pp set
487: }%%end if if body
488: { %%if- else part
489: } ifelse
490: this [ %% function args
491: pp ] {IntegerToSm1Integer} sendmsg2
492: /pp set
493: this [ %% function args
494: weightMatrix ] {Length} sendmsg2
495: /size set
496: this [ %% function args
497: size ] {NewVector} sendmsg2
498: /new0 set
499: /@@@.indexMode.flag.save @@@.indexMode.flag def 0 @@@.indexMode (0).. %%PSfor initvalue.
500: (integer) data_conversion
501: size (1).. sub (integer) data_conversion 1 2 -1 roll
502: { %% for body
503: (universalNumber) data_conversion /i set
504: weightMatrix [i ] Get
505: /tmp set
506: this [ %% function args
507: tmp ] {Length} sendmsg2
508: /n set
509: this [ %% function args
510: n ] {NewVector} sendmsg2
511: /newtmp set
512: (1).. /j set
513: %%for init.
514: %%for
515: { j n lt
516: { } {exit} ifelse
517: [ {%%increment
518: j (2).. {add} sendmsg2
519: /j set
520: } %%end of increment{A}
521: {%%start of B part{B}
522: newtmp [j (1).. {sub} sendmsg2
523: ] tmp [j (1).. {sub} sendmsg2
524: ] Get
525: Put
526: newtmp [j ] this [ %% function args
527: tmp [j ] Get
528: ] {IntegerToSm1Integer} sendmsg2
529: Put
530: } %% end of B part. {B}
531: 2 1 roll] {exec} map pop
532: } loop %%end of for
533: new0 [i ] newtmp Put
534: } for
535: [ vList ring_of_differential_operators new0 weight_vector pp ] define_ring /ringpp set
1.4 takayama 536: this [ %% function args
537: ] {SetRingVariables} sendmsg2
1.1 maekawa 538: @@@.indexMode.flag.save @@@.indexMode ringpp /FunctionValue set {/ExitPoint goto} exec %%return
539: /ExitPoint ]pop popVariables %%pop the local variables
540: /ExitPoint ]pop popVariables %%pop argValues
541: db.DebugStack setstack pop stdstack
542: FunctionValue } def
543: %%end of function
544:
545: /getxvar {
546: db.DebugStack setstack $In function : getxvar of class PrimitiveObject$ stdstack
547: /Arglist set /Argthis set /FunctionValue [ ] def
548: [/this /i ] /ArgNames set ArgNames pushVariables [ %%function body
549: [Argthis] Arglist join ArgNames mapset
550: [(x) (var) i ..int ] system_variable /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
551: db.DebugStack setstack pop stdstack
552: FunctionValue } def
553: %%end of function
554:
555: /getdvar {
556: db.DebugStack setstack $In function : getdvar of class PrimitiveObject$ stdstack
557: /Arglist set /Argthis set /FunctionValue [ ] def
558: [/this /i ] /ArgNames set ArgNames pushVariables [ %%function body
559: [Argthis] Arglist join ArgNames mapset
560: [(D) (var) i ..int ] system_variable /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
561: db.DebugStack setstack pop stdstack
562: FunctionValue } def
563: %%end of function
564:
565: /getvarn {
566: db.DebugStack setstack $In function : getvarn of class PrimitiveObject$ stdstack
567: /Arglist set /Argthis set /FunctionValue [ ] def
568: [/this ] /ArgNames set ArgNames pushVariables [ %%function body
569: [Argthis] ArgNames mapset
570: [(N)] system_variable (universalNumber) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
571: db.DebugStack setstack pop stdstack
572: FunctionValue } def
573: %%end of function
574:
1.4 takayama 575: false /SetRingVariables_Verbose set
1.1 maekawa 576: /SetRingVariables {
577: db.DebugStack setstack $In function : SetRingVariables of class PrimitiveObject$ stdstack
578: /Arglist set /Argthis set /FunctionValue [ ] def
579: [/this ] /ArgNames set ArgNames pushVariables [ %%function body
580: [Argthis] ArgNames mapset
581: SetRingVariables_Verbose %% if-condition
582: { %%ifbody
583: this [ %% function args
584: (SetRingVariables() Setting the global variables : ) ] {Print} sendmsg2
585: }%%end if if body
586: { %%if- else part
587: } ifelse
588: this [ %% function args
1.4 takayama 589: (0).. [(N)] system_variable (universalNumber) dc ] {k00setRingVariables} sendmsg2
590: %% if-condition
591: { %%ifbody
592: define_ring_variables }%%end if if body
593: { %%if- else part
594: } ifelse
1.1 maekawa 595: SetRingVariables_Verbose %% if-condition
596: { %%ifbody
597: this [ %% function args
598: ] {Ln} sendmsg2
599: }%%end if if body
600: { %%if- else part
601: } ifelse
602: /ExitPoint ]pop popVariables %%pop argValues
603: db.DebugStack setstack pop stdstack
604: FunctionValue } def
605: %%end of function
606:
607: /k00AreThereLeftBrace {
608: db.DebugStack setstack $In function : k00AreThereLeftBrace of class PrimitiveObject$ stdstack
609: /Arglist set /Argthis set /FunctionValue [ ] def
610: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
611: [Argthis] Arglist join ArgNames mapset
612: [ %%start of local variables
613: /leftBrace /jj /slist ] pushVariables [ %%local variables
614: $[$ (array) dc 0 get (universalNumber) dc /leftBrace set
615: this [ %% function args
616: this [ %% function args
1.8 ! takayama 617: s ] {StringToAsciiArray} sendmsg2
1.1 maekawa 618: leftBrace ] {Position} sendmsg2
619: /jj set
620: jj (1).. (0).. 2 1 roll {sub} sendmsg
621: eq not
622: %% if-condition
623: { %%ifbody
624: true /FunctionValue set {/ExitPoint goto} exec %%return
625: }%%end if if body
626: { %%if- else part
627: false /FunctionValue set {/ExitPoint goto} exec %%return
628: } ifelse
629: /ExitPoint ]pop popVariables %%pop the local variables
630: /ExitPoint ]pop popVariables %%pop argValues
631: db.DebugStack setstack pop stdstack
632: FunctionValue } def
633: %%end of function
634:
635: /k00setRingVariables {
636: db.DebugStack setstack $In function : k00setRingVariables of class PrimitiveObject$ stdstack
637: /Arglist set /Argthis set /FunctionValue [ ] def
1.4 takayama 638: [/this /p /q ] /ArgNames set ArgNames pushVariables [ %%function body
1.1 maekawa 639: [Argthis] Arglist join ArgNames mapset
640: [ %%start of local variables
1.4 takayama 641: /v /i ] pushVariables [ %%local variables
642: p /i set
643: %%for init.
644: %%for
645: { i q lt
646: { } {exit} ifelse
647: [ {%%increment
648: /i i (1).. {add} sendmsg2 def
649: } %%end of increment{A}
650: {%%start of B part{B}
1.1 maekawa 651: this [ %% function args
1.4 takayama 652: i ] {getxvar} sendmsg2
653: /v set
1.1 maekawa 654: this [ %% function args
1.4 takayama 655: v ] {k00AreThereLeftBrace} sendmsg2
1.1 maekawa 656: %% if-condition
657: { %%ifbody
1.4 takayama 658: false /FunctionValue set {/ExitPoint goto} exec %%return
1.1 maekawa 659: }%%end if if body
660: { %%if- else part
661: } ifelse
662: this [ %% function args
1.4 takayama 663: i ] {getdvar} sendmsg2
664: /v set
1.1 maekawa 665: this [ %% function args
1.4 takayama 666: v ] {k00AreThereLeftBrace} sendmsg2
1.1 maekawa 667: %% if-condition
668: { %%ifbody
1.4 takayama 669: false /FunctionValue set {/ExitPoint goto} exec %%return
1.1 maekawa 670: }%%end if if body
671: { %%if- else part
672: } ifelse
1.4 takayama 673: } %% end of B part. {B}
674: 2 1 roll] {exec} map pop
675: } loop %%end of for
676: true /FunctionValue set {/ExitPoint goto} exec %%return
1.1 maekawa 677: /ExitPoint ]pop popVariables %%pop the local variables
678: /ExitPoint ]pop popVariables %%pop argValues
679: db.DebugStack setstack pop stdstack
1.4 takayama 680: FunctionValue } def
1.1 maekawa 681: %%end of function
682:
683: /AddString {
684: db.DebugStack setstack $In function : AddString of class PrimitiveObject$ stdstack
685: /Arglist set /Argthis set /FunctionValue [ ] def
686: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
687: [Argthis] Arglist join ArgNames mapset
688: f aload length cat_n /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
689: db.DebugStack setstack pop stdstack
690: FunctionValue } def
691: %%end of function
692:
693: /IntegerToString {
694: db.DebugStack setstack $In function : IntegerToString of class PrimitiveObject$ stdstack
695: /Arglist set /Argthis set /FunctionValue [ ] def
696: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
697: [Argthis] Arglist join ArgNames mapset
698: f (string) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
699: db.DebugStack setstack pop stdstack
700: FunctionValue } def
701: %%end of function
702:
703: /Replace {
704: db.DebugStack setstack $In function : Replace of class PrimitiveObject$ stdstack
705: /Arglist set /Argthis set /FunctionValue [ ] def
706: [/this /f /rule ] /ArgNames set ArgNames pushVariables [ %%function body
707: [Argthis] Arglist join ArgNames mapset
708: f rule replace /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
709: db.DebugStack setstack pop stdstack
710: FunctionValue } def
711: %%end of function
712:
713: /AsciiToString {
714: db.DebugStack setstack $In function : AsciiToString of class PrimitiveObject$ stdstack
715: /Arglist set /Argthis set /FunctionValue [ ] def
716: [/this /c ] /ArgNames set ArgNames pushVariables [ %%function body
717: [Argthis] Arglist join ArgNames mapset
718: c (integer) dc (string) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
719: db.DebugStack setstack pop stdstack
720: FunctionValue } def
721: %%end of function
722:
723: /ToString {
724: db.DebugStack setstack $In function : ToString of class PrimitiveObject$ stdstack
725: /Arglist set /Argthis set /FunctionValue [ ] def
726: [/this /p ] /ArgNames set ArgNames pushVariables [ %%function body
727: [Argthis] Arglist join ArgNames mapset
728: [ %%start of local variables
729: /n /ans /i ] pushVariables [ %%local variables
730: [ ] /ans set
731: this [ %% function args
732: p ] {IsArray} sendmsg2
733: %% if-condition
734: { %%ifbody
735: this [ %% function args
736: p ] {Length} sendmsg2
737: /n set
738: this [ %% function args
739: ans ([ ) ] {Append} sendmsg2
740: /ans set
741: (0).. /i set
742: %%for init.
743: %%for
744: { i n lt
745: { } {exit} ifelse
746: [ {%%increment
747: /i i (1).. {add} sendmsg2 def
748: } %%end of increment{A}
749: {%%start of B part{B}
750: this [ %% function args
751: ans this [ %% function args
752: p [i ] Get
753: ] {ToString} sendmsg2
754: ] {Append} sendmsg2
755: /ans set
756: i n (1).. {sub} sendmsg2
757: eq not
758: %% if-condition
759: { %%ifbody
760: this [ %% function args
761: ans ( , ) ] {Append} sendmsg2
762: /ans set
763: }%%end if if body
764: { %%if- else part
765: } ifelse
766: } %% end of B part. {B}
767: 2 1 roll] {exec} map pop
768: } loop %%end of for
769: this [ %% function args
770: ans ( ] ) ] {Append} sendmsg2
771: /ans set
772: }%%end if if body
773: { %%if- else part
774: [ p (dollar) dc ] /ans set
775: } ifelse
776: this [ %% function args
777: ans ] {AddString} sendmsg2
778: /FunctionValue set {/ExitPoint goto} exec %%return
779: /ExitPoint ]pop popVariables %%pop the local variables
780: /ExitPoint ]pop popVariables %%pop argValues
781: db.DebugStack setstack pop stdstack
782: FunctionValue } def
783: %%end of function
784:
785: /IsArray {
786: db.DebugStack setstack $In function : IsArray of class PrimitiveObject$ stdstack
787: /Arglist set /Argthis set /FunctionValue [ ] def
788: [/this /p ] /ArgNames set ArgNames pushVariables [ %%function body
789: [Argthis] Arglist join ArgNames mapset
790: p isArray /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
791: db.DebugStack setstack pop stdstack
792: FunctionValue } def
793: %%end of function
794:
795: /Denominator {
796: db.DebugStack setstack $In function : Denominator of class PrimitiveObject$ stdstack
797: /Arglist set /Argthis set /FunctionValue [ ] def
798: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
799: [Argthis] Arglist join ArgNames mapset
800: f (denominator) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
801: db.DebugStack setstack pop stdstack
802: FunctionValue } def
803: %%end of function
804:
805: /Numerator {
806: db.DebugStack setstack $In function : Numerator of class PrimitiveObject$ stdstack
807: /Arglist set /Argthis set /FunctionValue [ ] def
808: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
809: [Argthis] Arglist join ArgNames mapset
810: f (numerator) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
811: db.DebugStack setstack pop stdstack
812: FunctionValue } def
813: %%end of function
814:
815: /Replace {
816: db.DebugStack setstack $In function : Replace of class PrimitiveObject$ stdstack
817: /Arglist set /Argthis set /FunctionValue [ ] def
818: [/this /f /rule ] /ArgNames set ArgNames pushVariables [ %%function body
819: [Argthis] Arglist join ArgNames mapset
820: [ %%start of local variables
821: /ans /n /tmp /i /num /den ] pushVariables [ %%local variables
822: this [ %% function args
823: f ] {IsArray} sendmsg2
824: %% if-condition
825: { %%ifbody
826: this [ %% function args
827: f ] {Length} sendmsg2
828: /n set
829: [ ] /ans set
830: (0).. /i set
831: %%for init.
832: %%for
833: { i n lt
834: { } {exit} ifelse
835: [ {%%increment
836: /i i (1).. {add} sendmsg2 def
837: } %%end of increment{A}
838: {%%start of B part{B}
839: this [ %% function args
840: ans this [ %% function args
841: f [i ] Get
842: rule ] {Replace} sendmsg2
843: ] {Append} sendmsg2
844: /ans set
845: } %% end of B part. {B}
846: 2 1 roll] {exec} map pop
847: } loop %%end of for
848: ans /FunctionValue set {/ExitPoint goto} exec %%return
849: }%%end if if body
850: { %%if- else part
851: } ifelse
852: f tag RationalFunctionP eq %% if-condition
853: { %%ifbody
854: this [ %% function args
855: f ] {Numerator} sendmsg2
856: /num set
857: this [ %% function args
858: f ] {Denominator} sendmsg2
859: /den set
860: num rule replace /num set
861: den rule replace /den set
862: num den {div} sendmsg2
863: /FunctionValue set {/ExitPoint goto} exec %%return
864: }%%end if if body
865: { %%if- else part
866: } ifelse
867: f rule replace /FunctionValue set /ExitPoint ]pop popVariables %%pop the local variables
868: /ExitPoint ]pop popVariables %%pop argValues
869: db.DebugStack setstack pop stdstack
870: FunctionValue } def
871: %%end of function
872:
873: /Map {
874: db.DebugStack setstack $In function : Map of class PrimitiveObject$ stdstack
875: /Arglist set /Argthis set /FunctionValue [ ] def
876: [/this /karg /func ] /ArgNames set ArgNames pushVariables [ %%function body
877: [Argthis] Arglist join ArgNames mapset
878: karg { [ 2 -1 roll ] this 2 -1 roll [(parse) func ] extension pop } map /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
879: db.DebugStack setstack pop stdstack
880: FunctionValue } def
881: %%end of function
882:
883: /Position {
884: db.DebugStack setstack $In function : Position of class PrimitiveObject$ stdstack
885: /Arglist set /Argthis set /FunctionValue [ ] def
886: [/this /list /elem ] /ArgNames set ArgNames pushVariables [ %%function body
887: [Argthis] Arglist join ArgNames mapset
888: [ %%start of local variables
889: /n /pos /i ] pushVariables [ %%local variables
890: this [ %% function args
891: list ] {Length} sendmsg2
892: /n set
893: (1).. (0).. 2 1 roll {sub} sendmsg
894: /pos set
895: (0).. /i set
896: %%for init.
897: %%for
898: { i n lt
899: { } {exit} ifelse
900: [ {%%increment
901: /i i (1).. {add} sendmsg2 def
902: } %%end of increment{A}
903: {%%start of B part{B}
904: elem list [i ] Get
905: eq
906: %% if-condition
907: { %%ifbody
908: i /pos set
909: /k00.label0 goto }%%end if if body
910: { %%if- else part
911: } ifelse
912: } %% end of B part. {B}
913: 2 1 roll] {exec} map pop
914: } loop %%end of for
915: /k00.label0 pos /FunctionValue set {/ExitPoint goto} exec %%return
916: /ExitPoint ]pop popVariables %%pop the local variables
917: /ExitPoint ]pop popVariables %%pop argValues
918: db.DebugStack setstack pop stdstack
919: FunctionValue } def
920: %%end of function
921:
922: /StringToAsciiArray {
923: db.DebugStack setstack $In function : StringToAsciiArray of class PrimitiveObject$ stdstack
924: /Arglist set /Argthis set /FunctionValue [ ] def
925: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
926: [Argthis] Arglist join ArgNames mapset
1.8 ! takayama 927: s (array) dc { (universalNumber) dc } map /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
1.1 maekawa 928: db.DebugStack setstack pop stdstack
929: FunctionValue } def
930: %%end of function
931:
932: /NewArray {
933: db.DebugStack setstack $In function : NewArray of class PrimitiveObject$ stdstack
934: /Arglist set /Argthis set /FunctionValue [ ] def
935: [/this /n ] /ArgNames set ArgNames pushVariables [ %%function body
936: [Argthis] Arglist join ArgNames mapset
937: this [ %% function args
938: n ] {NewVector} sendmsg2
939: /FunctionValue set {/ExitPoint goto} exec %%return
940: /ExitPoint ]pop popVariables %%pop argValues
941: db.DebugStack setstack pop stdstack
942: FunctionValue } def
943: %%end of function
944:
1.2 takayama 945: /GetEnv {
946: db.DebugStack setstack $In function : GetEnv of class PrimitiveObject$ stdstack
947: /Arglist set /Argthis set /FunctionValue [ ] def
948: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
949: [Argthis] Arglist join ArgNames mapset
950: [(getenv) s] extension /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
951: db.DebugStack setstack pop stdstack
952: FunctionValue } def
953: %%end of function
954:
1.3 takayama 955: /Boundp {
956: db.DebugStack setstack $In function : Boundp of class PrimitiveObject$ stdstack
957: /Arglist set /Argthis set /FunctionValue [ ] def
958: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
959: [Argthis] Arglist join ArgNames mapset
960: [ %%start of local variables
961: /b ] pushVariables [ %%local variables
962: [(parse) [(/) a ( load tag 0 eq
963: { /FunctionValue 0 def }
964: { /FunctionValue 1 def } ifelse )] cat ] extension /ExitPoint ]pop popVariables %%pop the local variables
965: /ExitPoint ]pop popVariables %%pop argValues
966: db.DebugStack setstack pop stdstack
967: FunctionValue } def
968: %%end of function
969:
970: /Rest {
971: db.DebugStack setstack $In function : Rest of class PrimitiveObject$ stdstack
972: /Arglist set /Argthis set /FunctionValue [ ] def
973: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
974: [Argthis] Arglist join ArgNames mapset
975: a rest /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
976: db.DebugStack setstack pop stdstack
977: FunctionValue } def
978: %%end of function
979:
980: /GetPathName {
981: db.DebugStack setstack $In function : GetPathName of class PrimitiveObject$ stdstack
982: /Arglist set /Argthis set /FunctionValue [ ] def
983: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
984: [Argthis] Arglist join ArgNames mapset
985: [ %%start of local variables
986: /t /sss ] pushVariables [ %%local variables
987: s /sss set
988: [(stat) s] extension 0 get /t set this [ %% function args
989: t ] {Tag} sendmsg2
990: (0).. eq
991: %% if-condition
992: { %%ifbody
993: this [ %% function args
994: [ this [ %% function args
995: (LOAD_K_PATH) ] {GetEnv} sendmsg2
996: (/) s ] ] {AddString} sendmsg2
997: /s set
998: [(stat) s] extension 0 get /t set this [ %% function args
999: t ] {Tag} sendmsg2
1000: (0).. eq
1001: %% if-condition
1002: { %%ifbody
1003: null /FunctionValue set {/ExitPoint goto} exec %%return
1004: }%%end if if body
1005: { %%if- else part
1006: s /FunctionValue set {/ExitPoint goto} exec %%return
1007: } ifelse
1008: }%%end if if body
1009: { %%if- else part
1010: s /FunctionValue set {/ExitPoint goto} exec %%return
1011: } ifelse
1012: /ExitPoint ]pop popVariables %%pop the local variables
1013: /ExitPoint ]pop popVariables %%pop argValues
1014: db.DebugStack setstack pop stdstack
1015: FunctionValue } def
1016: %%end of function
1017:
1.4 takayama 1018: /Load_sm1 {
1019: db.DebugStack setstack $In function : Load_sm1 of class PrimitiveObject$ stdstack
1020: /Arglist set /Argthis set /FunctionValue [ ] def
1021: [/this /fnames /flag ] /ArgNames set ArgNames pushVariables [ %%function body
1022: [Argthis] Arglist join ArgNames mapset
1023: [ %%start of local variables
1024: /ppp /n /i /cmd ] pushVariables [ %%local variables
1025: this [ %% function args
1026: flag ] {Boundp} sendmsg2
1027: %% if-condition
1028: { %%ifbody
1029: }%%end if if body
1030: { %%if- else part
1031: this [ %% function args
1032: fnames ] {Length} sendmsg2
1033: /n set
1034: (0).. /i set
1035: %%for init.
1036: %%for
1037: { i n lt
1038: { } {exit} ifelse
1039: [ {%%increment
1040: /i i (1).. {add} sendmsg2 def
1041: } %%end of increment{A}
1042: {%%start of B part{B}
1043: this [ %% function args
1044: fnames [i ] Get
1045: ] {GetPathName} sendmsg2
1046: /ppp set
1047: this [ %% function args
1048: ppp ] {Tag} sendmsg2
1049: (0).. eq not
1050: %% if-condition
1051: { %%ifbody
1052: [(parse) ppp pushfile ] extension this [ %% function args
1053: [ (/) flag ( 1 def ) ] ] {AddString} sendmsg2
1054: /cmd set
1055: [(parse) cmd ] extension n /i set
1056: }%%end if if body
1057: { %%if- else part
1058: } ifelse
1059: } %% end of B part. {B}
1060: 2 1 roll] {exec} map pop
1061: } loop %%end of for
1062: } ifelse
1063: /ExitPoint ]pop popVariables %%pop the local variables
1064: /ExitPoint ]pop popVariables %%pop argValues
1065: db.DebugStack setstack pop stdstack
1066: FunctionValue } def
1067: %%end of function
1068:
1.5 takayama 1069: /GetRing {
1070: db.DebugStack setstack $In function : GetRing of class PrimitiveObject$ stdstack
1071: /Arglist set /Argthis set /FunctionValue [ ] def
1072: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
1073: [Argthis] Arglist join ArgNames mapset
1074: f getRing /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
1075: db.DebugStack setstack pop stdstack
1076: FunctionValue } def
1077: %%end of function
1078:
1079: /SetRing {
1080: db.DebugStack setstack $In function : SetRing of class PrimitiveObject$ stdstack
1081: /Arglist set /Argthis set /FunctionValue [ ] def
1082: [/this /r ] /ArgNames set ArgNames pushVariables [ %%function body
1083: [Argthis] Arglist join ArgNames mapset
1084: r ring_def /ExitPoint ]pop popVariables %%pop argValues
1085: db.DebugStack setstack pop stdstack
1086: FunctionValue } def
1087: %%end of function
1088:
1.7 takayama 1089: /ReParse {
1090: db.DebugStack setstack $In function : ReParse of class PrimitiveObject$ stdstack
1091: /Arglist set /Argthis set /FunctionValue [ ] def
1092: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
1093: [Argthis] Arglist join ArgNames mapset
1094: [ %%start of local variables
1095: /c ] pushVariables [ %%local variables
1096: this [ %% function args
1097: a ] {IsArray} sendmsg2
1098: %% if-condition
1099: { %%ifbody
1100: this [ %% function args
1101: a (ReParse) ] {Map} sendmsg2
1102: /c set
1103: }%%end if if body
1104: { %%if- else part
1105: a toString . /c set } ifelse
1106: c /FunctionValue set {/ExitPoint goto} exec %%return
1107: /ExitPoint ]pop popVariables %%pop the local variables
1108: /ExitPoint ]pop popVariables %%pop argValues
1109: db.DebugStack setstack pop stdstack
1110: FunctionValue } def
1111: %%end of function
1112:
1113: /Pmat {
1114: db.DebugStack setstack $In function : Pmat of class PrimitiveObject$ stdstack
1115: /Arglist set /Argthis set /FunctionValue [ ] def
1116: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
1117: [Argthis] Arglist join ArgNames mapset
1118: a pmat /ExitPoint ]pop popVariables %%pop argValues
1119: db.DebugStack setstack pop stdstack
1120: } def
1121: %%end of function
1122:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>