Created
June 13, 2011 18:16
-
-
Save anonymous/1023350 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.include 'cclass.pasm' | |
.include 'except_severity.pasm' | |
.include 'except_types.pasm' | |
.include 'iglobals.pasm' | |
.include 'interpinfo.pasm' | |
.include 'iterator.pasm' | |
.include 'sysinfo.pasm' | |
.HLL "nqp" | |
.loadlib "nqp_group" | |
.loadlib "nqp_ops" | |
.loadlib "trans_ops" | |
.loadlib "io_ops" | |
.namespace [] | |
.sub "_block11" :anon :subid("10_1307988395.99251") | |
.param pmc param_13 :slurpy | |
.annotate 'line', 0 | |
.const 'Sub' $P2577 = "170_1307988395.99251" | |
capture_lex $P2577 | |
.const 'Sub' $P2510 = "161_1307988395.99251" | |
capture_lex $P2510 | |
.const 'Sub' $P2318 = "147_1307988395.99251" | |
capture_lex $P2318 | |
.const 'Sub' $P2252 = "138_1307988395.99251" | |
capture_lex $P2252 | |
.const 'Sub' $P1101 = "77_1307988395.99251" | |
capture_lex $P1101 | |
.const 'Sub' $P771 = "52_1307988395.99251" | |
capture_lex $P771 | |
.const 'Sub' $P546 = "42_1307988395.99251" | |
capture_lex $P546 | |
.const 'Sub' $P278 = "21_1307988395.99251" | |
capture_lex $P278 | |
.const 'Sub' $P37 = "11_1307988395.99251" | |
capture_lex $P37 | |
.annotate 'line', 1 | |
.lex "@ARGS", param_13 | |
set $P15, $P14 | |
.lex "GLOBALish", $P15 | |
set $P17, $P16 | |
.lex "$?PACKAGE", $P17 | |
set $P19, $P18 | |
.lex "RoleToRoleApplier", $P19 | |
set $P21, $P20 | |
.lex "NQPConcreteRoleHOW", $P21 | |
set $P23, $P22 | |
.lex "RoleToClassApplier", $P23 | |
set $P25, $P24 | |
.lex "NQPParametricRoleHOW", $P25 | |
set $P27, $P26 | |
.lex "NQPClassHOW", $P27 | |
set $P29, $P28 | |
.lex "NQPNativeHOW", $P29 | |
set $P31, $P30 | |
.lex "NQPAttribute", $P31 | |
set $P33, $P32 | |
.lex "NQPModuleHOW", $P33 | |
set $P35, $P34 | |
.lex "EXPORTHOW", $P35 | |
$P0 = find_dynamic_lex "$*CTXSAVE" | |
if null $P0 goto ctxsave_done | |
$I0 = can $P0, "ctxsave" | |
unless $I0 goto ctxsave_done | |
$P0."ctxsave"() | |
ctxsave_done: | |
.annotate 'line', 5 | |
.const 'Sub' $P37 = "11_1307988395.99251" | |
capture_lex $P37 | |
$P37() | |
.annotate 'line', 97 | |
.const 'Sub' $P278 = "21_1307988395.99251" | |
capture_lex $P278 | |
$P278() | |
.annotate 'line', 242 | |
.const 'Sub' $P546 = "42_1307988395.99251" | |
capture_lex $P546 | |
$P546() | |
.annotate 'line', 318 | |
.const 'Sub' $P771 = "52_1307988395.99251" | |
capture_lex $P771 | |
$P771() | |
.annotate 'line', 498 | |
.const 'Sub' $P1101 = "77_1307988395.99251" | |
capture_lex $P1101 | |
$P1101() | |
.annotate 'line', 972 | |
.const 'Sub' $P2252 = "138_1307988395.99251" | |
capture_lex $P2252 | |
$P2252() | |
.annotate 'line', 1018 | |
.const 'Sub' $P2318 = "147_1307988395.99251" | |
capture_lex $P2318 | |
$P2318() | |
.annotate 'line', 1089 | |
.const 'Sub' $P2510 = "161_1307988395.99251" | |
capture_lex $P2510 | |
$P2510() | |
.annotate 'line', 1138 | |
.const 'Sub' $P2577 = "170_1307988395.99251" | |
capture_lex $P2577 | |
$P2577() | |
find_lex $P2608, "@ARGS" | |
if $P2608, if_2607 | |
set $P2606, $P2608 | |
goto if_2607_end | |
if_2607: | |
load_bytecode "ModuleLoader.pbc" | |
get_hll_global $P2609, "ModuleLoader" | |
getinterp $P2610 | |
set $P2611, $P2610["context"] | |
$P2612 = $P2609."set_mainline_module"($P2611) | |
set $P2606, $P2612 | |
if_2607_end: | |
.annotate 'line', 1 | |
.return ($P2606) | |
.const 'Sub' $P2614 = "171_1307988395.99251" | |
.return ($P2614) | |
.end | |
.HLL "nqp" | |
.namespace [] | |
.sub "" :load :init :subid("post172") :outer("10_1307988395.99251") | |
.annotate 'line', 0 | |
.const 'Sub' $P12 = "10_1307988395.99251" | |
.local pmc block | |
set block, $P12 | |
nqp_get_sc $P2618, "1307988392.89946" | |
isnull $I2619, $P2618 | |
if $I2619, if_2617 | |
.const 'Sub' $P3377 = "10_1307988395.99251" | |
$P3378 = $P3377."get_lexinfo"() | |
nqp_get_sc_object $P3379, "1307988392.89946", 0 | |
$P3378."set_static_lexpad_value"("GLOBALish", $P3379) | |
.const 'Sub' $P3380 = "10_1307988395.99251" | |
$P3381 = $P3380."get_lexinfo"() | |
$P3381."finish_static_lexpad"() | |
.const 'Sub' $P3382 = "10_1307988395.99251" | |
$P3383 = $P3382."get_lexinfo"() | |
nqp_get_sc_object $P3384, "1307988392.89946", 0 | |
$P3383."set_static_lexpad_value"("$?PACKAGE", $P3384) | |
.const 'Sub' $P3385 = "10_1307988395.99251" | |
$P3386 = $P3385."get_lexinfo"() | |
$P3386."finish_static_lexpad"() | |
.const 'Sub' $P3387 = "10_1307988395.99251" | |
$P3388 = $P3387."get_lexinfo"() | |
nqp_get_sc_object $P3389, "1307988392.89946", 1 | |
$P3388."set_static_lexpad_value"("RoleToRoleApplier", $P3389) | |
.const 'Sub' $P3390 = "10_1307988395.99251" | |
$P3391 = $P3390."get_lexinfo"() | |
$P3391."finish_static_lexpad"() | |
nqp_get_sc_object $P3392, "1307988392.89946", 2 | |
.const 'Sub' $P3393 = "12_1307988395.99251" | |
assign $P3392, $P3393 | |
.const 'Sub' $P3394 = "11_1307988395.99251" | |
$P3395 = $P3394."get_lexinfo"() | |
nqp_get_sc_object $P3396, "1307988392.89946", 1 | |
$P3395."set_static_lexpad_value"("$?PACKAGE", $P3396) | |
.const 'Sub' $P3397 = "11_1307988395.99251" | |
$P3398 = $P3397."get_lexinfo"() | |
$P3398."finish_static_lexpad"() | |
.const 'Sub' $P3399 = "11_1307988395.99251" | |
$P3400 = $P3399."get_lexinfo"() | |
nqp_get_sc_object $P3401, "1307988392.89946", 1 | |
$P3400."set_static_lexpad_value"("$?CLASS", $P3401) | |
.const 'Sub' $P3402 = "11_1307988395.99251" | |
$P3403 = $P3402."get_lexinfo"() | |
$P3403."finish_static_lexpad"() | |
.const 'Sub' $P3404 = "10_1307988395.99251" | |
$P3405 = $P3404."get_lexinfo"() | |
nqp_get_sc_object $P3406, "1307988392.89946", 3 | |
$P3405."set_static_lexpad_value"("NQPConcreteRoleHOW", $P3406) | |
.const 'Sub' $P3407 = "10_1307988395.99251" | |
$P3408 = $P3407."get_lexinfo"() | |
$P3408."finish_static_lexpad"() | |
nqp_get_sc_object $P3409, "1307988392.89946", 4 | |
.const 'Sub' $P3410 = "22_1307988395.99251" | |
assign $P3409, $P3410 | |
nqp_get_sc_object $P3411, "1307988392.89946", 5 | |
.const 'Sub' $P3412 = "23_1307988395.99251" | |
assign $P3411, $P3412 | |
nqp_get_sc_object $P3413, "1307988392.89946", 6 | |
.const 'Sub' $P3414 = "24_1307988395.99251" | |
assign $P3413, $P3414 | |
nqp_get_sc_object $P3415, "1307988392.89946", 7 | |
.const 'Sub' $P3416 = "25_1307988395.99251" | |
assign $P3415, $P3416 | |
nqp_get_sc_object $P3417, "1307988392.89946", 8 | |
.const 'Sub' $P3418 = "26_1307988395.99251" | |
assign $P3417, $P3418 | |
nqp_get_sc_object $P3419, "1307988392.89946", 9 | |
.const 'Sub' $P3420 = "27_1307988395.99251" | |
assign $P3419, $P3420 | |
nqp_get_sc_object $P3421, "1307988392.89946", 10 | |
.const 'Sub' $P3422 = "28_1307988395.99251" | |
assign $P3421, $P3422 | |
nqp_get_sc_object $P3423, "1307988392.89946", 11 | |
.const 'Sub' $P3424 = "29_1307988395.99251" | |
assign $P3423, $P3424 | |
nqp_get_sc_object $P3425, "1307988392.89946", 12 | |
.const 'Sub' $P3426 = "30_1307988395.99251" | |
assign $P3425, $P3426 | |
nqp_get_sc_object $P3427, "1307988392.89946", 13 | |
.const 'Sub' $P3428 = "31_1307988395.99251" | |
assign $P3427, $P3428 | |
nqp_get_sc_object $P3429, "1307988392.89946", 14 | |
.const 'Sub' $P3430 = "33_1307988395.99251" | |
assign $P3429, $P3430 | |
nqp_get_sc_object $P3431, "1307988392.89946", 15 | |
.const 'Sub' $P3432 = "35_1307988395.99251" | |
assign $P3431, $P3432 | |
nqp_get_sc_object $P3433, "1307988392.89946", 16 | |
.const 'Sub' $P3434 = "36_1307988395.99251" | |
assign $P3433, $P3434 | |
nqp_get_sc_object $P3435, "1307988392.89946", 17 | |
.const 'Sub' $P3436 = "37_1307988395.99251" | |
assign $P3435, $P3436 | |
nqp_get_sc_object $P3437, "1307988392.89946", 18 | |
.const 'Sub' $P3438 = "38_1307988395.99251" | |
assign $P3437, $P3438 | |
nqp_get_sc_object $P3439, "1307988392.89946", 19 | |
.const 'Sub' $P3440 = "40_1307988395.99251" | |
assign $P3439, $P3440 | |
nqp_get_sc_object $P3441, "1307988392.89946", 20 | |
.const 'Sub' $P3442 = "41_1307988395.99251" | |
assign $P3441, $P3442 | |
.const 'Sub' $P3443 = "21_1307988395.99251" | |
$P3444 = $P3443."get_lexinfo"() | |
nqp_get_sc_object $P3445, "1307988392.89946", 3 | |
$P3444."set_static_lexpad_value"("$?PACKAGE", $P3445) | |
.const 'Sub' $P3446 = "21_1307988395.99251" | |
$P3447 = $P3446."get_lexinfo"() | |
$P3447."finish_static_lexpad"() | |
.const 'Sub' $P3448 = "21_1307988395.99251" | |
$P3449 = $P3448."get_lexinfo"() | |
nqp_get_sc_object $P3450, "1307988392.89946", 3 | |
$P3449."set_static_lexpad_value"("$?CLASS", $P3450) | |
.const 'Sub' $P3451 = "21_1307988395.99251" | |
$P3452 = $P3451."get_lexinfo"() | |
$P3452."finish_static_lexpad"() | |
.const 'Sub' $P3453 = "10_1307988395.99251" | |
$P3454 = $P3453."get_lexinfo"() | |
nqp_get_sc_object $P3455, "1307988392.89946", 21 | |
$P3454."set_static_lexpad_value"("RoleToClassApplier", $P3455) | |
.const 'Sub' $P3456 = "10_1307988395.99251" | |
$P3457 = $P3456."get_lexinfo"() | |
$P3457."finish_static_lexpad"() | |
nqp_get_sc_object $P3458, "1307988392.89946", 22 | |
.const 'Sub' $P3459 = "47_1307988395.99251" | |
assign $P3458, $P3459 | |
.const 'Sub' $P3460 = "42_1307988395.99251" | |
$P3461 = $P3460."get_lexinfo"() | |
nqp_get_sc_object $P3462, "1307988392.89946", 21 | |
$P3461."set_static_lexpad_value"("$?PACKAGE", $P3462) | |
.const 'Sub' $P3463 = "42_1307988395.99251" | |
$P3464 = $P3463."get_lexinfo"() | |
$P3464."finish_static_lexpad"() | |
.const 'Sub' $P3465 = "42_1307988395.99251" | |
$P3466 = $P3465."get_lexinfo"() | |
nqp_get_sc_object $P3467, "1307988392.89946", 21 | |
$P3466."set_static_lexpad_value"("$?CLASS", $P3467) | |
.const 'Sub' $P3468 = "42_1307988395.99251" | |
$P3469 = $P3468."get_lexinfo"() | |
$P3469."finish_static_lexpad"() | |
.const 'Sub' $P3470 = "10_1307988395.99251" | |
$P3471 = $P3470."get_lexinfo"() | |
nqp_get_sc_object $P3472, "1307988392.89946", 23 | |
$P3471."set_static_lexpad_value"("NQPParametricRoleHOW", $P3472) | |
.const 'Sub' $P3473 = "10_1307988395.99251" | |
$P3474 = $P3473."get_lexinfo"() | |
$P3474."finish_static_lexpad"() | |
nqp_get_sc_object $P3475, "1307988392.89946", 24 | |
.const 'Sub' $P3476 = "54_1307988395.99251" | |
assign $P3475, $P3476 | |
nqp_get_sc_object $P3477, "1307988392.89946", 25 | |
.const 'Sub' $P3478 = "55_1307988395.99251" | |
assign $P3477, $P3478 | |
nqp_get_sc_object $P3479, "1307988392.89946", 26 | |
.const 'Sub' $P3480 = "56_1307988395.99251" | |
assign $P3479, $P3480 | |
nqp_get_sc_object $P3481, "1307988392.89946", 27 | |
.const 'Sub' $P3482 = "57_1307988395.99251" | |
assign $P3481, $P3482 | |
nqp_get_sc_object $P3483, "1307988392.89946", 28 | |
.const 'Sub' $P3484 = "58_1307988395.99251" | |
assign $P3483, $P3484 | |
nqp_get_sc_object $P3485, "1307988392.89946", 29 | |
.const 'Sub' $P3486 = "59_1307988395.99251" | |
assign $P3485, $P3486 | |
nqp_get_sc_object $P3487, "1307988392.89946", 30 | |
.const 'Sub' $P3488 = "60_1307988395.99251" | |
assign $P3487, $P3488 | |
nqp_get_sc_object $P3489, "1307988392.89946", 31 | |
.const 'Sub' $P3490 = "61_1307988395.99251" | |
assign $P3489, $P3490 | |
nqp_get_sc_object $P3491, "1307988392.89946", 32 | |
.const 'Sub' $P3492 = "62_1307988395.99251" | |
assign $P3491, $P3492 | |
nqp_get_sc_object $P3493, "1307988392.89946", 33 | |
.const 'Sub' $P3494 = "63_1307988395.99251" | |
assign $P3493, $P3494 | |
nqp_get_sc_object $P3495, "1307988392.89946", 34 | |
.const 'Sub' $P3496 = "64_1307988395.99251" | |
assign $P3495, $P3496 | |
nqp_get_sc_object $P3497, "1307988392.89946", 35 | |
.const 'Sub' $P3498 = "65_1307988395.99251" | |
assign $P3497, $P3498 | |
nqp_get_sc_object $P3499, "1307988392.89946", 36 | |
.const 'Sub' $P3500 = "70_1307988395.99251" | |
assign $P3499, $P3500 | |
nqp_get_sc_object $P3501, "1307988392.89946", 37 | |
.const 'Sub' $P3502 = "72_1307988395.99251" | |
assign $P3501, $P3502 | |
nqp_get_sc_object $P3503, "1307988392.89946", 38 | |
.const 'Sub' $P3504 = "73_1307988395.99251" | |
assign $P3503, $P3504 | |
nqp_get_sc_object $P3505, "1307988392.89946", 39 | |
.const 'Sub' $P3506 = "74_1307988395.99251" | |
assign $P3505, $P3506 | |
nqp_get_sc_object $P3507, "1307988392.89946", 40 | |
.const 'Sub' $P3508 = "76_1307988395.99251" | |
assign $P3507, $P3508 | |
.const 'Sub' $P3509 = "52_1307988395.99251" | |
$P3510 = $P3509."get_lexinfo"() | |
nqp_get_sc_object $P3511, "1307988392.89946", 23 | |
$P3510."set_static_lexpad_value"("$?PACKAGE", $P3511) | |
.const 'Sub' $P3512 = "52_1307988395.99251" | |
$P3513 = $P3512."get_lexinfo"() | |
$P3513."finish_static_lexpad"() | |
.const 'Sub' $P3514 = "52_1307988395.99251" | |
$P3515 = $P3514."get_lexinfo"() | |
nqp_get_sc_object $P3516, "1307988392.89946", 23 | |
$P3515."set_static_lexpad_value"("$?CLASS", $P3516) | |
.const 'Sub' $P3517 = "52_1307988395.99251" | |
$P3518 = $P3517."get_lexinfo"() | |
$P3518."finish_static_lexpad"() | |
.const 'Sub' $P3519 = "10_1307988395.99251" | |
$P3520 = $P3519."get_lexinfo"() | |
nqp_get_sc_object $P3521, "1307988392.89946", 41 | |
$P3520."set_static_lexpad_value"("NQPClassHOW", $P3521) | |
.const 'Sub' $P3522 = "10_1307988395.99251" | |
$P3523 = $P3522."get_lexinfo"() | |
$P3523."finish_static_lexpad"() | |
nqp_get_sc_object $P3524, "1307988392.89946", 42 | |
.const 'Sub' $P3525 = "88_1307988395.99251" | |
assign $P3524, $P3525 | |
nqp_get_sc_object $P3526, "1307988392.89946", 43 | |
.const 'Sub' $P3527 = "89_1307988395.99251" | |
assign $P3526, $P3527 | |
nqp_get_sc_object $P3528, "1307988392.89946", 44 | |
.const 'Sub' $P3529 = "90_1307988395.99251" | |
assign $P3528, $P3529 | |
nqp_get_sc_object $P3530, "1307988392.89946", 45 | |
.const 'Sub' $P3531 = "91_1307988395.99251" | |
assign $P3530, $P3531 | |
nqp_get_sc_object $P3532, "1307988392.89946", 46 | |
.const 'Sub' $P3533 = "92_1307988395.99251" | |
assign $P3532, $P3533 | |
nqp_get_sc_object $P3534, "1307988392.89946", 47 | |
.const 'Sub' $P3535 = "93_1307988395.99251" | |
assign $P3534, $P3535 | |
nqp_get_sc_object $P3536, "1307988392.89946", 48 | |
.const 'Sub' $P3537 = "94_1307988395.99251" | |
assign $P3536, $P3537 | |
nqp_get_sc_object $P3538, "1307988392.89946", 49 | |
.const 'Sub' $P3539 = "96_1307988395.99251" | |
assign $P3538, $P3539 | |
nqp_get_sc_object $P3540, "1307988392.89946", 50 | |
.const 'Sub' $P3541 = "97_1307988395.99251" | |
assign $P3540, $P3541 | |
nqp_get_sc_object $P3542, "1307988392.89946", 51 | |
.const 'Sub' $P3543 = "99_1307988395.99251" | |
assign $P3542, $P3543 | |
nqp_get_sc_object $P3544, "1307988392.89946", 52 | |
.const 'Sub' $P3545 = "100_1307988395.99251" | |
assign $P3544, $P3545 | |
nqp_get_sc_object $P3546, "1307988392.89946", 53 | |
.const 'Sub' $P3547 = "101_1307988395.99251" | |
assign $P3546, $P3547 | |
nqp_get_sc_object $P3548, "1307988392.89946", 54 | |
.const 'Sub' $P3549 = "105_1307988395.99251" | |
assign $P3548, $P3549 | |
nqp_get_sc_object $P3550, "1307988392.89946", 55 | |
.const 'Sub' $P3551 = "110_1307988395.99251" | |
assign $P3550, $P3551 | |
nqp_get_sc_object $P3552, "1307988392.89946", 56 | |
.const 'Sub' $P3553 = "113_1307988395.99251" | |
assign $P3552, $P3553 | |
nqp_get_sc_object $P3554, "1307988392.89946", 57 | |
.const 'Sub' $P3555 = "116_1307988395.99251" | |
assign $P3554, $P3555 | |
nqp_get_sc_object $P3556, "1307988392.89946", 58 | |
.const 'Sub' $P3557 = "119_1307988395.99251" | |
assign $P3556, $P3557 | |
nqp_get_sc_object $P3558, "1307988392.89946", 59 | |
.const 'Sub' $P3559 = "122_1307988395.99251" | |
assign $P3558, $P3559 | |
nqp_get_sc_object $P3560, "1307988392.89946", 60 | |
.const 'Sub' $P3561 = "123_1307988395.99251" | |
assign $P3560, $P3561 | |
nqp_get_sc_object $P3562, "1307988392.89946", 61 | |
.const 'Sub' $P3563 = "124_1307988395.99251" | |
assign $P3562, $P3563 | |
nqp_get_sc_object $P3564, "1307988392.89946", 62 | |
.const 'Sub' $P3565 = "126_1307988395.99251" | |
assign $P3564, $P3565 | |
nqp_get_sc_object $P3566, "1307988392.89946", 63 | |
.const 'Sub' $P3567 = "127_1307988395.99251" | |
assign $P3566, $P3567 | |
nqp_get_sc_object $P3568, "1307988392.89946", 64 | |
.const 'Sub' $P3569 = "128_1307988395.99251" | |
assign $P3568, $P3569 | |
nqp_get_sc_object $P3570, "1307988392.89946", 65 | |
.const 'Sub' $P3571 = "130_1307988395.99251" | |
assign $P3570, $P3571 | |
nqp_get_sc_object $P3572, "1307988392.89946", 66 | |
.const 'Sub' $P3573 = "131_1307988395.99251" | |
assign $P3572, $P3573 | |
nqp_get_sc_object $P3574, "1307988392.89946", 67 | |
.const 'Sub' $P3575 = "132_1307988395.99251" | |
assign $P3574, $P3575 | |
nqp_get_sc_object $P3576, "1307988392.89946", 68 | |
.const 'Sub' $P3577 = "133_1307988395.99251" | |
assign $P3576, $P3577 | |
nqp_get_sc_object $P3578, "1307988392.89946", 69 | |
.const 'Sub' $P3579 = "134_1307988395.99251" | |
assign $P3578, $P3579 | |
nqp_get_sc_object $P3580, "1307988392.89946", 70 | |
.const 'Sub' $P3581 = "136_1307988395.99251" | |
assign $P3580, $P3581 | |
.const 'Sub' $P3582 = "77_1307988395.99251" | |
$P3583 = $P3582."get_lexinfo"() | |
nqp_get_sc_object $P3584, "1307988392.89946", 41 | |
$P3583."set_static_lexpad_value"("$?PACKAGE", $P3584) | |
.const 'Sub' $P3585 = "77_1307988395.99251" | |
$P3586 = $P3585."get_lexinfo"() | |
$P3586."finish_static_lexpad"() | |
.const 'Sub' $P3587 = "77_1307988395.99251" | |
$P3588 = $P3587."get_lexinfo"() | |
nqp_get_sc_object $P3589, "1307988392.89946", 41 | |
$P3588."set_static_lexpad_value"("$?CLASS", $P3589) | |
.const 'Sub' $P3590 = "77_1307988395.99251" | |
$P3591 = $P3590."get_lexinfo"() | |
$P3591."finish_static_lexpad"() | |
.const 'Sub' $P3592 = "10_1307988395.99251" | |
$P3593 = $P3592."get_lexinfo"() | |
nqp_get_sc_object $P3594, "1307988392.89946", 71 | |
$P3593."set_static_lexpad_value"("NQPNativeHOW", $P3594) | |
.const 'Sub' $P3595 = "10_1307988395.99251" | |
$P3596 = $P3595."get_lexinfo"() | |
$P3596."finish_static_lexpad"() | |
nqp_get_sc_object $P3597, "1307988392.89946", 72 | |
.const 'Sub' $P3598 = "139_1307988395.99251" | |
assign $P3597, $P3598 | |
nqp_get_sc_object $P3599, "1307988392.89946", 73 | |
.const 'Sub' $P3600 = "140_1307988395.99251" | |
assign $P3599, $P3600 | |
nqp_get_sc_object $P3601, "1307988392.89946", 74 | |
.const 'Sub' $P3602 = "141_1307988395.99251" | |
assign $P3601, $P3602 | |
nqp_get_sc_object $P3603, "1307988392.89946", 75 | |
.const 'Sub' $P3604 = "142_1307988395.99251" | |
assign $P3603, $P3604 | |
nqp_get_sc_object $P3605, "1307988392.89946", 76 | |
.const 'Sub' $P3606 = "143_1307988395.99251" | |
assign $P3605, $P3606 | |
nqp_get_sc_object $P3607, "1307988392.89946", 77 | |
.const 'Sub' $P3608 = "144_1307988395.99251" | |
assign $P3607, $P3608 | |
nqp_get_sc_object $P3609, "1307988392.89946", 78 | |
.const 'Sub' $P3610 = "145_1307988395.99251" | |
assign $P3609, $P3610 | |
nqp_get_sc_object $P3611, "1307988392.89946", 79 | |
.const 'Sub' $P3612 = "146_1307988395.99251" | |
assign $P3611, $P3612 | |
.const 'Sub' $P3613 = "138_1307988395.99251" | |
$P3614 = $P3613."get_lexinfo"() | |
nqp_get_sc_object $P3615, "1307988392.89946", 71 | |
$P3614."set_static_lexpad_value"("$?PACKAGE", $P3615) | |
.const 'Sub' $P3616 = "138_1307988395.99251" | |
$P3617 = $P3616."get_lexinfo"() | |
$P3617."finish_static_lexpad"() | |
.const 'Sub' $P3618 = "138_1307988395.99251" | |
$P3619 = $P3618."get_lexinfo"() | |
nqp_get_sc_object $P3620, "1307988392.89946", 71 | |
$P3619."set_static_lexpad_value"("$?CLASS", $P3620) | |
.const 'Sub' $P3621 = "138_1307988395.99251" | |
$P3622 = $P3621."get_lexinfo"() | |
$P3622."finish_static_lexpad"() | |
.const 'Sub' $P3623 = "10_1307988395.99251" | |
$P3624 = $P3623."get_lexinfo"() | |
nqp_get_sc_object $P3625, "1307988392.89946", 80 | |
$P3624."set_static_lexpad_value"("NQPAttribute", $P3625) | |
.const 'Sub' $P3626 = "10_1307988395.99251" | |
$P3627 = $P3626."get_lexinfo"() | |
$P3627."finish_static_lexpad"() | |
nqp_get_sc_object $P3628, "1307988392.89946", 81 | |
.const 'Sub' $P3629 = "150_1307988395.99251" | |
assign $P3628, $P3629 | |
nqp_get_sc_object $P3630, "1307988392.89946", 82 | |
.const 'Sub' $P3631 = "151_1307988395.99251" | |
assign $P3630, $P3631 | |
nqp_get_sc_object $P3632, "1307988392.89946", 83 | |
.const 'Sub' $P3633 = "152_1307988395.99251" | |
assign $P3632, $P3633 | |
nqp_get_sc_object $P3634, "1307988392.89946", 84 | |
.const 'Sub' $P3635 = "153_1307988395.99251" | |
assign $P3634, $P3635 | |
nqp_get_sc_object $P3636, "1307988392.89946", 85 | |
.const 'Sub' $P3637 = "154_1307988395.99251" | |
assign $P3636, $P3637 | |
nqp_get_sc_object $P3638, "1307988392.89946", 86 | |
.const 'Sub' $P3639 = "155_1307988395.99251" | |
assign $P3638, $P3639 | |
nqp_get_sc_object $P3640, "1307988392.89946", 87 | |
.const 'Sub' $P3641 = "160_1307988395.99251" | |
assign $P3640, $P3641 | |
.const 'Sub' $P3642 = "147_1307988395.99251" | |
$P3643 = $P3642."get_lexinfo"() | |
nqp_get_sc_object $P3644, "1307988392.89946", 80 | |
$P3643."set_static_lexpad_value"("$?PACKAGE", $P3644) | |
.const 'Sub' $P3645 = "147_1307988395.99251" | |
$P3646 = $P3645."get_lexinfo"() | |
$P3646."finish_static_lexpad"() | |
.const 'Sub' $P3647 = "147_1307988395.99251" | |
$P3648 = $P3647."get_lexinfo"() | |
nqp_get_sc_object $P3649, "1307988392.89946", 80 | |
$P3648."set_static_lexpad_value"("$?CLASS", $P3649) | |
.const 'Sub' $P3650 = "147_1307988395.99251" | |
$P3651 = $P3650."get_lexinfo"() | |
$P3651."finish_static_lexpad"() | |
.const 'Sub' $P3652 = "10_1307988395.99251" | |
$P3653 = $P3652."get_lexinfo"() | |
nqp_get_sc_object $P3654, "1307988392.89946", 88 | |
$P3653."set_static_lexpad_value"("NQPModuleHOW", $P3654) | |
.const 'Sub' $P3655 = "10_1307988395.99251" | |
$P3656 = $P3655."get_lexinfo"() | |
$P3656."finish_static_lexpad"() | |
nqp_get_sc_object $P3657, "1307988392.89946", 89 | |
.const 'Sub' $P3658 = "162_1307988395.99251" | |
assign $P3657, $P3658 | |
nqp_get_sc_object $P3659, "1307988392.89946", 90 | |
.const 'Sub' $P3660 = "163_1307988395.99251" | |
assign $P3659, $P3660 | |
nqp_get_sc_object $P3661, "1307988392.89946", 91 | |
.const 'Sub' $P3662 = "164_1307988395.99251" | |
assign $P3661, $P3662 | |
nqp_get_sc_object $P3663, "1307988392.89946", 92 | |
.const 'Sub' $P3664 = "165_1307988395.99251" | |
assign $P3663, $P3664 | |
nqp_get_sc_object $P3665, "1307988392.89946", 93 | |
.const 'Sub' $P3666 = "166_1307988395.99251" | |
assign $P3665, $P3666 | |
nqp_get_sc_object $P3667, "1307988392.89946", 94 | |
.const 'Sub' $P3668 = "167_1307988395.99251" | |
assign $P3667, $P3668 | |
nqp_get_sc_object $P3669, "1307988392.89946", 95 | |
.const 'Sub' $P3670 = "168_1307988395.99251" | |
assign $P3669, $P3670 | |
nqp_get_sc_object $P3671, "1307988392.89946", 96 | |
.const 'Sub' $P3672 = "169_1307988395.99251" | |
assign $P3671, $P3672 | |
.const 'Sub' $P3673 = "161_1307988395.99251" | |
$P3674 = $P3673."get_lexinfo"() | |
nqp_get_sc_object $P3675, "1307988392.89946", 88 | |
$P3674."set_static_lexpad_value"("$?PACKAGE", $P3675) | |
.const 'Sub' $P3676 = "161_1307988395.99251" | |
$P3677 = $P3676."get_lexinfo"() | |
$P3677."finish_static_lexpad"() | |
.const 'Sub' $P3678 = "161_1307988395.99251" | |
$P3679 = $P3678."get_lexinfo"() | |
nqp_get_sc_object $P3680, "1307988392.89946", 88 | |
$P3679."set_static_lexpad_value"("$?CLASS", $P3680) | |
.const 'Sub' $P3681 = "161_1307988395.99251" | |
$P3682 = $P3681."get_lexinfo"() | |
$P3682."finish_static_lexpad"() | |
.const 'Sub' $P3683 = "10_1307988395.99251" | |
$P3684 = $P3683."get_lexinfo"() | |
nqp_get_sc_object $P3685, "1307988392.89946", 97 | |
$P3684."set_static_lexpad_value"("EXPORTHOW", $P3685) | |
.const 'Sub' $P3686 = "10_1307988395.99251" | |
$P3687 = $P3686."get_lexinfo"() | |
$P3687."finish_static_lexpad"() | |
.const 'Sub' $P3688 = "170_1307988395.99251" | |
$P3689 = $P3688."get_lexinfo"() | |
nqp_get_sc_object $P3690, "1307988392.89946", 97 | |
$P3689."set_static_lexpad_value"("$?PACKAGE", $P3690) | |
.const 'Sub' $P3691 = "170_1307988395.99251" | |
$P3692 = $P3691."get_lexinfo"() | |
$P3692."finish_static_lexpad"() | |
.const 'Sub' $P3693 = "170_1307988395.99251" | |
$P3694 = $P3693."get_lexinfo"() | |
nqp_get_sc_object $P3695, "1307988392.89946", 97 | |
$P3694."set_static_lexpad_value"("$?CLASS", $P3695) | |
.const 'Sub' $P3696 = "170_1307988395.99251" | |
$P3697 = $P3696."get_lexinfo"() | |
$P3697."finish_static_lexpad"() | |
goto if_2617_end | |
if_2617: | |
nqp_dynop_setup | |
getinterp $P2620 | |
get_class $P2621, "LexPad" | |
get_class $P2622, "NQPLexPad" | |
$P2620."hll_map"($P2621, $P2622) | |
nqp_create_sc $P2623, "1307988392.89946" | |
.local pmc cur_sc | |
set cur_sc, $P2623 | |
nqp_get_sc_object $P2624, "__6MODEL_CORE__", 0 | |
$P2625 = $P2624."new_type"("GLOBALish" :named("name")) | |
nqp_set_sc_for_object $P2625, cur_sc | |
nqp_set_sc_object "1307988392.89946", 0, $P2625 | |
.const 'Sub' $P2626 = "10_1307988395.99251" | |
$P2627 = $P2626."get_lexinfo"() | |
nqp_get_sc_object $P2628, "1307988392.89946", 0 | |
$P2627."set_static_lexpad_value"("GLOBALish", $P2628) | |
.const 'Sub' $P2629 = "10_1307988395.99251" | |
$P2630 = $P2629."get_lexinfo"() | |
$P2630."finish_static_lexpad"() | |
.const 'Sub' $P2631 = "10_1307988395.99251" | |
$P2632 = $P2631."get_lexinfo"() | |
nqp_get_sc_object $P2633, "1307988392.89946", 0 | |
$P2632."set_static_lexpad_value"("$?PACKAGE", $P2633) | |
.const 'Sub' $P2634 = "10_1307988395.99251" | |
$P2635 = $P2634."get_lexinfo"() | |
$P2635."finish_static_lexpad"() | |
nqp_get_sc_object $P2636, "__6MODEL_CORE__", 0 | |
$P2637 = $P2636."new_type"("RoleToRoleApplier" :named("name")) | |
nqp_set_sc_for_object $P2637, cur_sc | |
nqp_set_sc_object "1307988392.89946", 1, $P2637 | |
nqp_get_sc_object $P2638, "1307988392.89946", 1 | |
nqp_get_sc_object $P2639, "1307988392.89946", 0 | |
get_who $P2640, $P2639 | |
set $P2640["RoleToRoleApplier"], $P2638 | |
.const 'Sub' $P2641 = "10_1307988395.99251" | |
$P2642 = $P2641."get_lexinfo"() | |
nqp_get_sc_object $P2643, "1307988392.89946", 1 | |
$P2642."set_static_lexpad_value"("RoleToRoleApplier", $P2643) | |
.const 'Sub' $P2644 = "10_1307988395.99251" | |
$P2645 = $P2644."get_lexinfo"() | |
$P2645."finish_static_lexpad"() | |
nqp_get_sc_object $P2646, "1307988392.89946", 1 | |
get_how $P2647, $P2646 | |
nqp_get_sc_object $P2648, "1307988392.89946", 1 | |
.const 'Sub' $P2649 = "12_1307988395.99251" | |
$P2647."add_method"($P2648, "apply", $P2649) | |
.const 'Sub' $P2650 = "11_1307988395.99251" | |
$P2651 = $P2650."get_lexinfo"() | |
nqp_get_sc_object $P2652, "1307988392.89946", 1 | |
$P2651."set_static_lexpad_value"("$?PACKAGE", $P2652) | |
.const 'Sub' $P2653 = "11_1307988395.99251" | |
$P2654 = $P2653."get_lexinfo"() | |
$P2654."finish_static_lexpad"() | |
.const 'Sub' $P2655 = "11_1307988395.99251" | |
$P2656 = $P2655."get_lexinfo"() | |
nqp_get_sc_object $P2657, "1307988392.89946", 1 | |
$P2656."set_static_lexpad_value"("$?CLASS", $P2657) | |
.const 'Sub' $P2658 = "11_1307988395.99251" | |
$P2659 = $P2658."get_lexinfo"() | |
$P2659."finish_static_lexpad"() | |
nqp_get_sc_object $P2660, "1307988392.89946", 1 | |
get_how $P2661, $P2660 | |
nqp_get_sc_object $P2662, "1307988392.89946", 1 | |
$P2661."compose"($P2662) | |
nqp_get_sc_object $P2663, "__6MODEL_CORE__", 0 | |
$P2664 = $P2663."new_type"("NQPConcreteRoleHOW" :named("name")) | |
nqp_set_sc_for_object $P2664, cur_sc | |
nqp_set_sc_object "1307988392.89946", 3, $P2664 | |
nqp_get_sc_object $P2665, "1307988392.89946", 3 | |
nqp_get_sc_object $P2666, "1307988392.89946", 0 | |
get_who $P2667, $P2666 | |
set $P2667["NQPConcreteRoleHOW"], $P2665 | |
.const 'Sub' $P2668 = "10_1307988395.99251" | |
$P2669 = $P2668."get_lexinfo"() | |
nqp_get_sc_object $P2670, "1307988392.89946", 3 | |
$P2669."set_static_lexpad_value"("NQPConcreteRoleHOW", $P2670) | |
.const 'Sub' $P2671 = "10_1307988395.99251" | |
$P2672 = $P2671."get_lexinfo"() | |
$P2672."finish_static_lexpad"() | |
nqp_get_sc_object $P2673, "1307988392.89946", 3 | |
get_how $P2674, $P2673 | |
nqp_get_sc_object $P2675, "1307988392.89946", 3 | |
nqp_get_sc_object $P2676, "__6MODEL_CORE__", 2 | |
$P2677 = $P2676."new"("$!name" :named("name")) | |
$P2674."add_attribute"($P2675, $P2677) | |
nqp_get_sc_object $P2678, "1307988392.89946", 3 | |
get_how $P2679, $P2678 | |
nqp_get_sc_object $P2680, "1307988392.89946", 3 | |
nqp_get_sc_object $P2681, "__6MODEL_CORE__", 2 | |
$P2682 = $P2681."new"("$!instance_of" :named("name")) | |
$P2679."add_attribute"($P2680, $P2682) | |
nqp_get_sc_object $P2683, "1307988392.89946", 3 | |
get_how $P2684, $P2683 | |
nqp_get_sc_object $P2685, "1307988392.89946", 3 | |
nqp_get_sc_object $P2686, "__6MODEL_CORE__", 2 | |
$P2687 = $P2686."new"("%!attributes" :named("name")) | |
$P2684."add_attribute"($P2685, $P2687) | |
nqp_get_sc_object $P2688, "1307988392.89946", 3 | |
get_how $P2689, $P2688 | |
nqp_get_sc_object $P2690, "1307988392.89946", 3 | |
nqp_get_sc_object $P2691, "__6MODEL_CORE__", 2 | |
$P2692 = $P2691."new"("%!methods" :named("name")) | |
$P2689."add_attribute"($P2690, $P2692) | |
nqp_get_sc_object $P2693, "1307988392.89946", 3 | |
get_how $P2694, $P2693 | |
nqp_get_sc_object $P2695, "1307988392.89946", 3 | |
nqp_get_sc_object $P2696, "__6MODEL_CORE__", 2 | |
$P2697 = $P2696."new"("@!multi_methods_to_incorporate" :named("name")) | |
$P2694."add_attribute"($P2695, $P2697) | |
nqp_get_sc_object $P2698, "1307988392.89946", 3 | |
get_how $P2699, $P2698 | |
nqp_get_sc_object $P2700, "1307988392.89946", 3 | |
nqp_get_sc_object $P2701, "__6MODEL_CORE__", 2 | |
$P2702 = $P2701."new"("@!collisions" :named("name")) | |
$P2699."add_attribute"($P2700, $P2702) | |
nqp_get_sc_object $P2703, "1307988392.89946", 3 | |
get_how $P2704, $P2703 | |
nqp_get_sc_object $P2705, "1307988392.89946", 3 | |
nqp_get_sc_object $P2706, "__6MODEL_CORE__", 2 | |
$P2707 = $P2706."new"("@!roles" :named("name")) | |
$P2704."add_attribute"($P2705, $P2707) | |
nqp_get_sc_object $P2708, "1307988392.89946", 3 | |
get_how $P2709, $P2708 | |
nqp_get_sc_object $P2710, "1307988392.89946", 3 | |
nqp_get_sc_object $P2711, "__6MODEL_CORE__", 2 | |
$P2712 = $P2711."new"("@!done" :named("name")) | |
$P2709."add_attribute"($P2710, $P2712) | |
nqp_get_sc_object $P2713, "1307988392.89946", 3 | |
get_how $P2714, $P2713 | |
nqp_get_sc_object $P2715, "1307988392.89946", 3 | |
nqp_get_sc_object $P2716, "__6MODEL_CORE__", 2 | |
$P2717 = $P2716."new"("$!composed" :named("name")) | |
$P2714."add_attribute"($P2715, $P2717) | |
nqp_get_sc_object $P2718, "1307988392.89946", 3 | |
get_how $P2719, $P2718 | |
nqp_get_sc_object $P2720, "1307988392.89946", 3 | |
.const 'Sub' $P2721 = "22_1307988395.99251" | |
$P2719."add_method"($P2720, "new", $P2721) | |
nqp_get_sc_object $P2722, "1307988392.89946", 3 | |
get_how $P2723, $P2722 | |
nqp_get_sc_object $P2724, "1307988392.89946", 3 | |
.const 'Sub' $P2725 = "23_1307988395.99251" | |
$P2723."add_method"($P2724, "BUILD", $P2725) | |
nqp_get_sc_object $P2726, "1307988392.89946", 3 | |
get_how $P2727, $P2726 | |
nqp_get_sc_object $P2728, "1307988392.89946", 3 | |
.const 'Sub' $P2729 = "24_1307988395.99251" | |
$P2727."add_method"($P2728, "new_type", $P2729) | |
nqp_get_sc_object $P2730, "1307988392.89946", 3 | |
get_how $P2731, $P2730 | |
nqp_get_sc_object $P2732, "1307988392.89946", 3 | |
.const 'Sub' $P2733 = "25_1307988395.99251" | |
$P2731."add_method"($P2732, "add_method", $P2733) | |
nqp_get_sc_object $P2734, "1307988392.89946", 3 | |
get_how $P2735, $P2734 | |
nqp_get_sc_object $P2736, "1307988392.89946", 3 | |
.const 'Sub' $P2737 = "26_1307988395.99251" | |
$P2735."add_method"($P2736, "add_multi_method", $P2737) | |
nqp_get_sc_object $P2738, "1307988392.89946", 3 | |
get_how $P2739, $P2738 | |
nqp_get_sc_object $P2740, "1307988392.89946", 3 | |
.const 'Sub' $P2741 = "27_1307988395.99251" | |
$P2739."add_method"($P2740, "add_attribute", $P2741) | |
nqp_get_sc_object $P2742, "1307988392.89946", 3 | |
get_how $P2743, $P2742 | |
nqp_get_sc_object $P2744, "1307988392.89946", 3 | |
.const 'Sub' $P2745 = "28_1307988395.99251" | |
$P2743."add_method"($P2744, "add_parent", $P2745) | |
nqp_get_sc_object $P2746, "1307988392.89946", 3 | |
get_how $P2747, $P2746 | |
nqp_get_sc_object $P2748, "1307988392.89946", 3 | |
.const 'Sub' $P2749 = "29_1307988395.99251" | |
$P2747."add_method"($P2748, "add_role", $P2749) | |
nqp_get_sc_object $P2750, "1307988392.89946", 3 | |
get_how $P2751, $P2750 | |
nqp_get_sc_object $P2752, "1307988392.89946", 3 | |
.const 'Sub' $P2753 = "30_1307988395.99251" | |
$P2751."add_method"($P2752, "add_collision", $P2753) | |
nqp_get_sc_object $P2754, "1307988392.89946", 3 | |
get_how $P2755, $P2754 | |
nqp_get_sc_object $P2756, "1307988392.89946", 3 | |
.const 'Sub' $P2757 = "31_1307988395.99251" | |
$P2755."add_method"($P2756, "compose", $P2757) | |
nqp_get_sc_object $P2758, "1307988392.89946", 3 | |
get_how $P2759, $P2758 | |
nqp_get_sc_object $P2760, "1307988392.89946", 3 | |
.const 'Sub' $P2761 = "33_1307988395.99251" | |
$P2759."add_method"($P2760, "methods", $P2761) | |
nqp_get_sc_object $P2762, "1307988392.89946", 3 | |
get_how $P2763, $P2762 | |
nqp_get_sc_object $P2764, "1307988392.89946", 3 | |
.const 'Sub' $P2765 = "35_1307988395.99251" | |
$P2763."add_method"($P2764, "method_table", $P2765) | |
nqp_get_sc_object $P2766, "1307988392.89946", 3 | |
get_how $P2767, $P2766 | |
nqp_get_sc_object $P2768, "1307988392.89946", 3 | |
.const 'Sub' $P2769 = "36_1307988395.99251" | |
$P2767."add_method"($P2768, "collisions", $P2769) | |
nqp_get_sc_object $P2770, "1307988392.89946", 3 | |
get_how $P2771, $P2770 | |
nqp_get_sc_object $P2772, "1307988392.89946", 3 | |
.const 'Sub' $P2773 = "37_1307988395.99251" | |
$P2771."add_method"($P2772, "name", $P2773) | |
nqp_get_sc_object $P2774, "1307988392.89946", 3 | |
get_how $P2775, $P2774 | |
nqp_get_sc_object $P2776, "1307988392.89946", 3 | |
.const 'Sub' $P2777 = "38_1307988395.99251" | |
$P2775."add_method"($P2776, "attributes", $P2777) | |
nqp_get_sc_object $P2778, "1307988392.89946", 3 | |
get_how $P2779, $P2778 | |
nqp_get_sc_object $P2780, "1307988392.89946", 3 | |
.const 'Sub' $P2781 = "40_1307988395.99251" | |
$P2779."add_method"($P2780, "roles", $P2781) | |
nqp_get_sc_object $P2782, "1307988392.89946", 3 | |
get_how $P2783, $P2782 | |
nqp_get_sc_object $P2784, "1307988392.89946", 3 | |
.const 'Sub' $P2785 = "41_1307988395.99251" | |
$P2783."add_method"($P2784, "instance_of", $P2785) | |
.const 'Sub' $P2786 = "21_1307988395.99251" | |
$P2787 = $P2786."get_lexinfo"() | |
nqp_get_sc_object $P2788, "1307988392.89946", 3 | |
$P2787."set_static_lexpad_value"("$?PACKAGE", $P2788) | |
.const 'Sub' $P2789 = "21_1307988395.99251" | |
$P2790 = $P2789."get_lexinfo"() | |
$P2790."finish_static_lexpad"() | |
.const 'Sub' $P2791 = "21_1307988395.99251" | |
$P2792 = $P2791."get_lexinfo"() | |
nqp_get_sc_object $P2793, "1307988392.89946", 3 | |
$P2792."set_static_lexpad_value"("$?CLASS", $P2793) | |
.const 'Sub' $P2794 = "21_1307988395.99251" | |
$P2795 = $P2794."get_lexinfo"() | |
$P2795."finish_static_lexpad"() | |
nqp_get_sc_object $P2796, "1307988392.89946", 3 | |
get_how $P2797, $P2796 | |
nqp_get_sc_object $P2798, "1307988392.89946", 3 | |
$P2797."compose"($P2798) | |
nqp_get_sc_object $P2799, "__6MODEL_CORE__", 0 | |
$P2800 = $P2799."new_type"("RoleToClassApplier" :named("name")) | |
nqp_set_sc_for_object $P2800, cur_sc | |
nqp_set_sc_object "1307988392.89946", 21, $P2800 | |
nqp_get_sc_object $P2801, "1307988392.89946", 21 | |
nqp_get_sc_object $P2802, "1307988392.89946", 0 | |
get_who $P2803, $P2802 | |
set $P2803["RoleToClassApplier"], $P2801 | |
.const 'Sub' $P2804 = "10_1307988395.99251" | |
$P2805 = $P2804."get_lexinfo"() | |
nqp_get_sc_object $P2806, "1307988392.89946", 21 | |
$P2805."set_static_lexpad_value"("RoleToClassApplier", $P2806) | |
.const 'Sub' $P2807 = "10_1307988395.99251" | |
$P2808 = $P2807."get_lexinfo"() | |
$P2808."finish_static_lexpad"() | |
nqp_get_sc_object $P2809, "1307988392.89946", 21 | |
get_how $P2810, $P2809 | |
nqp_get_sc_object $P2811, "1307988392.89946", 21 | |
.const 'Sub' $P2812 = "47_1307988395.99251" | |
$P2810."add_method"($P2811, "apply", $P2812) | |
.const 'Sub' $P2813 = "42_1307988395.99251" | |
$P2814 = $P2813."get_lexinfo"() | |
nqp_get_sc_object $P2815, "1307988392.89946", 21 | |
$P2814."set_static_lexpad_value"("$?PACKAGE", $P2815) | |
.const 'Sub' $P2816 = "42_1307988395.99251" | |
$P2817 = $P2816."get_lexinfo"() | |
$P2817."finish_static_lexpad"() | |
.const 'Sub' $P2818 = "42_1307988395.99251" | |
$P2819 = $P2818."get_lexinfo"() | |
nqp_get_sc_object $P2820, "1307988392.89946", 21 | |
$P2819."set_static_lexpad_value"("$?CLASS", $P2820) | |
.const 'Sub' $P2821 = "42_1307988395.99251" | |
$P2822 = $P2821."get_lexinfo"() | |
$P2822."finish_static_lexpad"() | |
nqp_get_sc_object $P2823, "1307988392.89946", 21 | |
get_how $P2824, $P2823 | |
nqp_get_sc_object $P2825, "1307988392.89946", 21 | |
$P2824."compose"($P2825) | |
nqp_get_sc_object $P2826, "__6MODEL_CORE__", 0 | |
$P2827 = $P2826."new_type"("NQPParametricRoleHOW" :named("name")) | |
nqp_set_sc_for_object $P2827, cur_sc | |
nqp_set_sc_object "1307988392.89946", 23, $P2827 | |
nqp_get_sc_object $P2828, "1307988392.89946", 23 | |
nqp_get_sc_object $P2829, "1307988392.89946", 0 | |
get_who $P2830, $P2829 | |
set $P2830["NQPParametricRoleHOW"], $P2828 | |
.const 'Sub' $P2831 = "10_1307988395.99251" | |
$P2832 = $P2831."get_lexinfo"() | |
nqp_get_sc_object $P2833, "1307988392.89946", 23 | |
$P2832."set_static_lexpad_value"("NQPParametricRoleHOW", $P2833) | |
.const 'Sub' $P2834 = "10_1307988395.99251" | |
$P2835 = $P2834."get_lexinfo"() | |
$P2835."finish_static_lexpad"() | |
nqp_get_sc_object $P2836, "1307988392.89946", 23 | |
get_how $P2837, $P2836 | |
nqp_get_sc_object $P2838, "1307988392.89946", 23 | |
nqp_get_sc_object $P2839, "__6MODEL_CORE__", 2 | |
$P2840 = $P2839."new"("$!name" :named("name")) | |
$P2837."add_attribute"($P2838, $P2840) | |
nqp_get_sc_object $P2841, "1307988392.89946", 23 | |
get_how $P2842, $P2841 | |
nqp_get_sc_object $P2843, "1307988392.89946", 23 | |
nqp_get_sc_object $P2844, "__6MODEL_CORE__", 2 | |
$P2845 = $P2844."new"("%!attributes" :named("name")) | |
$P2842."add_attribute"($P2843, $P2845) | |
nqp_get_sc_object $P2846, "1307988392.89946", 23 | |
get_how $P2847, $P2846 | |
nqp_get_sc_object $P2848, "1307988392.89946", 23 | |
nqp_get_sc_object $P2849, "__6MODEL_CORE__", 2 | |
$P2850 = $P2849."new"("%!methods" :named("name")) | |
$P2847."add_attribute"($P2848, $P2850) | |
nqp_get_sc_object $P2851, "1307988392.89946", 23 | |
get_how $P2852, $P2851 | |
nqp_get_sc_object $P2853, "1307988392.89946", 23 | |
nqp_get_sc_object $P2854, "__6MODEL_CORE__", 2 | |
$P2855 = $P2854."new"("@!multi_methods_to_incorporate" :named("name")) | |
$P2852."add_attribute"($P2853, $P2855) | |
nqp_get_sc_object $P2856, "1307988392.89946", 23 | |
get_how $P2857, $P2856 | |
nqp_get_sc_object $P2858, "1307988392.89946", 23 | |
nqp_get_sc_object $P2859, "__6MODEL_CORE__", 2 | |
$P2860 = $P2859."new"("@!roles" :named("name")) | |
$P2857."add_attribute"($P2858, $P2860) | |
nqp_get_sc_object $P2861, "1307988392.89946", 23 | |
get_how $P2862, $P2861 | |
nqp_get_sc_object $P2863, "1307988392.89946", 23 | |
nqp_get_sc_object $P2864, "__6MODEL_CORE__", 2 | |
$P2865 = $P2864."new"("$!composed" :named("name")) | |
$P2862."add_attribute"($P2863, $P2865) | |
nqp_get_sc_object $P2866, "1307988392.89946", 23 | |
get_how $P2867, $P2866 | |
nqp_get_sc_object $P2868, "1307988392.89946", 23 | |
nqp_get_sc_object $P2869, "__6MODEL_CORE__", 2 | |
$P2870 = $P2869."new"("$!body_block" :named("name")) | |
$P2867."add_attribute"($P2868, $P2870) | |
nqp_get_sc_object $P2871, "1307988392.89946", 23 | |
get_how $P2872, $P2871 | |
nqp_get_sc_object $P2873, "1307988392.89946", 23 | |
.const 'Sub' $P2874 = "54_1307988395.99251" | |
$P2872."add_method"($P2873, "new", $P2874) | |
nqp_get_sc_object $P2875, "1307988392.89946", 23 | |
get_how $P2876, $P2875 | |
nqp_get_sc_object $P2877, "1307988392.89946", 23 | |
.const 'Sub' $P2878 = "55_1307988395.99251" | |
$P2876."add_method"($P2877, "BUILD", $P2878) | |
nqp_get_sc_object $P2879, "1307988392.89946", 23 | |
get_how $P2880, $P2879 | |
nqp_get_sc_object $P2881, "1307988392.89946", 23 | |
.const 'Sub' $P2882 = "56_1307988395.99251" | |
$P2880."add_method"($P2881, "new_type", $P2882) | |
nqp_get_sc_object $P2883, "1307988392.89946", 23 | |
get_how $P2884, $P2883 | |
nqp_get_sc_object $P2885, "1307988392.89946", 23 | |
.const 'Sub' $P2886 = "57_1307988395.99251" | |
$P2884."add_method"($P2885, "set_body_block", $P2886) | |
nqp_get_sc_object $P2887, "1307988392.89946", 23 | |
get_how $P2888, $P2887 | |
nqp_get_sc_object $P2889, "1307988392.89946", 23 | |
.const 'Sub' $P2890 = "58_1307988395.99251" | |
$P2888."add_method"($P2889, "add_method", $P2890) | |
nqp_get_sc_object $P2891, "1307988392.89946", 23 | |
get_how $P2892, $P2891 | |
nqp_get_sc_object $P2893, "1307988392.89946", 23 | |
.const 'Sub' $P2894 = "59_1307988395.99251" | |
$P2892."add_method"($P2893, "add_multi_method", $P2894) | |
nqp_get_sc_object $P2895, "1307988392.89946", 23 | |
get_how $P2896, $P2895 | |
nqp_get_sc_object $P2897, "1307988392.89946", 23 | |
.const 'Sub' $P2898 = "60_1307988395.99251" | |
$P2896."add_method"($P2897, "add_attribute", $P2898) | |
nqp_get_sc_object $P2899, "1307988392.89946", 23 | |
get_how $P2900, $P2899 | |
nqp_get_sc_object $P2901, "1307988392.89946", 23 | |
.const 'Sub' $P2902 = "61_1307988395.99251" | |
$P2900."add_method"($P2901, "add_parent", $P2902) | |
nqp_get_sc_object $P2903, "1307988392.89946", 23 | |
get_how $P2904, $P2903 | |
nqp_get_sc_object $P2905, "1307988392.89946", 23 | |
.const 'Sub' $P2906 = "62_1307988395.99251" | |
$P2904."add_method"($P2905, "add_role", $P2906) | |
nqp_get_sc_object $P2907, "1307988392.89946", 23 | |
get_how $P2908, $P2907 | |
nqp_get_sc_object $P2909, "1307988392.89946", 23 | |
.const 'Sub' $P2910 = "63_1307988395.99251" | |
$P2908."add_method"($P2909, "compose", $P2910) | |
nqp_get_sc_object $P2911, "1307988392.89946", 23 | |
get_how $P2912, $P2911 | |
nqp_get_sc_object $P2913, "1307988392.89946", 23 | |
.const 'Sub' $P2914 = "64_1307988395.99251" | |
$P2912."add_method"($P2913, "parametric", $P2914) | |
nqp_get_sc_object $P2915, "1307988392.89946", 23 | |
get_how $P2916, $P2915 | |
nqp_get_sc_object $P2917, "1307988392.89946", 23 | |
.const 'Sub' $P2918 = "65_1307988395.99251" | |
$P2916."add_method"($P2917, "instantiate", $P2918) | |
nqp_get_sc_object $P2919, "1307988392.89946", 23 | |
get_how $P2920, $P2919 | |
nqp_get_sc_object $P2921, "1307988392.89946", 23 | |
.const 'Sub' $P2922 = "70_1307988395.99251" | |
$P2920."add_method"($P2921, "methods", $P2922) | |
nqp_get_sc_object $P2923, "1307988392.89946", 23 | |
get_how $P2924, $P2923 | |
nqp_get_sc_object $P2925, "1307988392.89946", 23 | |
.const 'Sub' $P2926 = "72_1307988395.99251" | |
$P2924."add_method"($P2925, "method_table", $P2926) | |
nqp_get_sc_object $P2927, "1307988392.89946", 23 | |
get_how $P2928, $P2927 | |
nqp_get_sc_object $P2929, "1307988392.89946", 23 | |
.const 'Sub' $P2930 = "73_1307988395.99251" | |
$P2928."add_method"($P2929, "name", $P2930) | |
nqp_get_sc_object $P2931, "1307988392.89946", 23 | |
get_how $P2932, $P2931 | |
nqp_get_sc_object $P2933, "1307988392.89946", 23 | |
.const 'Sub' $P2934 = "74_1307988395.99251" | |
$P2932."add_method"($P2933, "attributes", $P2934) | |
nqp_get_sc_object $P2935, "1307988392.89946", 23 | |
get_how $P2936, $P2935 | |
nqp_get_sc_object $P2937, "1307988392.89946", 23 | |
.const 'Sub' $P2938 = "76_1307988395.99251" | |
$P2936."add_method"($P2937, "roles", $P2938) | |
.const 'Sub' $P2939 = "52_1307988395.99251" | |
$P2940 = $P2939."get_lexinfo"() | |
nqp_get_sc_object $P2941, "1307988392.89946", 23 | |
$P2940."set_static_lexpad_value"("$?PACKAGE", $P2941) | |
.const 'Sub' $P2942 = "52_1307988395.99251" | |
$P2943 = $P2942."get_lexinfo"() | |
$P2943."finish_static_lexpad"() | |
.const 'Sub' $P2944 = "52_1307988395.99251" | |
$P2945 = $P2944."get_lexinfo"() | |
nqp_get_sc_object $P2946, "1307988392.89946", 23 | |
$P2945."set_static_lexpad_value"("$?CLASS", $P2946) | |
.const 'Sub' $P2947 = "52_1307988395.99251" | |
$P2948 = $P2947."get_lexinfo"() | |
$P2948."finish_static_lexpad"() | |
nqp_get_sc_object $P2949, "1307988392.89946", 23 | |
get_how $P2950, $P2949 | |
nqp_get_sc_object $P2951, "1307988392.89946", 23 | |
$P2950."compose"($P2951) | |
nqp_get_sc_object $P2952, "__6MODEL_CORE__", 0 | |
$P2953 = $P2952."new_type"("NQPClassHOW" :named("name")) | |
nqp_set_sc_for_object $P2953, cur_sc | |
nqp_set_sc_object "1307988392.89946", 41, $P2953 | |
nqp_get_sc_object $P2954, "1307988392.89946", 41 | |
nqp_get_sc_object $P2955, "1307988392.89946", 0 | |
get_who $P2956, $P2955 | |
set $P2956["NQPClassHOW"], $P2954 | |
.const 'Sub' $P2957 = "10_1307988395.99251" | |
$P2958 = $P2957."get_lexinfo"() | |
nqp_get_sc_object $P2959, "1307988392.89946", 41 | |
$P2958."set_static_lexpad_value"("NQPClassHOW", $P2959) | |
.const 'Sub' $P2960 = "10_1307988395.99251" | |
$P2961 = $P2960."get_lexinfo"() | |
$P2961."finish_static_lexpad"() | |
nqp_get_sc_object $P2962, "1307988392.89946", 41 | |
get_how $P2963, $P2962 | |
nqp_get_sc_object $P2964, "1307988392.89946", 41 | |
nqp_get_sc_object $P2965, "__6MODEL_CORE__", 2 | |
$P2966 = $P2965."new"("$!name" :named("name")) | |
$P2963."add_attribute"($P2964, $P2966) | |
nqp_get_sc_object $P2967, "1307988392.89946", 41 | |
get_how $P2968, $P2967 | |
nqp_get_sc_object $P2969, "1307988392.89946", 41 | |
nqp_get_sc_object $P2970, "__6MODEL_CORE__", 2 | |
$P2971 = $P2970."new"("%!attributes" :named("name")) | |
$P2968."add_attribute"($P2969, $P2971) | |
nqp_get_sc_object $P2972, "1307988392.89946", 41 | |
get_how $P2973, $P2972 | |
nqp_get_sc_object $P2974, "1307988392.89946", 41 | |
nqp_get_sc_object $P2975, "__6MODEL_CORE__", 2 | |
$P2976 = $P2975."new"("%!methods" :named("name")) | |
$P2973."add_attribute"($P2974, $P2976) | |
nqp_get_sc_object $P2977, "1307988392.89946", 41 | |
get_how $P2978, $P2977 | |
nqp_get_sc_object $P2979, "1307988392.89946", 41 | |
nqp_get_sc_object $P2980, "__6MODEL_CORE__", 2 | |
$P2981 = $P2980."new"("@!multi_methods_to_incorporate" :named("name")) | |
$P2978."add_attribute"($P2979, $P2981) | |
nqp_get_sc_object $P2982, "1307988392.89946", 41 | |
get_how $P2983, $P2982 | |
nqp_get_sc_object $P2984, "1307988392.89946", 41 | |
nqp_get_sc_object $P2985, "__6MODEL_CORE__", 2 | |
$P2986 = $P2985."new"("@!parents" :named("name")) | |
$P2983."add_attribute"($P2984, $P2986) | |
nqp_get_sc_object $P2987, "1307988392.89946", 41 | |
get_how $P2988, $P2987 | |
nqp_get_sc_object $P2989, "1307988392.89946", 41 | |
nqp_get_sc_object $P2990, "__6MODEL_CORE__", 2 | |
$P2991 = $P2990."new"("@!roles" :named("name")) | |
$P2988."add_attribute"($P2989, $P2991) | |
nqp_get_sc_object $P2992, "1307988392.89946", 41 | |
get_how $P2993, $P2992 | |
nqp_get_sc_object $P2994, "1307988392.89946", 41 | |
nqp_get_sc_object $P2995, "__6MODEL_CORE__", 2 | |
$P2996 = $P2995."new"("$!default_parent" :named("name")) | |
$P2993."add_attribute"($P2994, $P2996) | |
nqp_get_sc_object $P2997, "1307988392.89946", 41 | |
get_how $P2998, $P2997 | |
nqp_get_sc_object $P2999, "1307988392.89946", 41 | |
nqp_get_sc_object $P3000, "__6MODEL_CORE__", 2 | |
$P3001 = $P3000."new"("@!vtable" :named("name")) | |
$P2998."add_attribute"($P2999, $P3001) | |
nqp_get_sc_object $P3002, "1307988392.89946", 41 | |
get_how $P3003, $P3002 | |
nqp_get_sc_object $P3004, "1307988392.89946", 41 | |
nqp_get_sc_object $P3005, "__6MODEL_CORE__", 2 | |
$P3006 = $P3005."new"("%!method-vtable-slots" :named("name")) | |
$P3003."add_attribute"($P3004, $P3006) | |
nqp_get_sc_object $P3007, "1307988392.89946", 41 | |
get_how $P3008, $P3007 | |
nqp_get_sc_object $P3009, "1307988392.89946", 41 | |
nqp_get_sc_object $P3010, "__6MODEL_CORE__", 2 | |
$P3011 = $P3010."new"("$!composed" :named("name")) | |
$P3008."add_attribute"($P3009, $P3011) | |
nqp_get_sc_object $P3012, "1307988392.89946", 41 | |
get_how $P3013, $P3012 | |
nqp_get_sc_object $P3014, "1307988392.89946", 41 | |
nqp_get_sc_object $P3015, "__6MODEL_CORE__", 2 | |
$P3016 = $P3015."new"("@!mro" :named("name")) | |
$P3013."add_attribute"($P3014, $P3016) | |
nqp_get_sc_object $P3017, "1307988392.89946", 41 | |
get_how $P3018, $P3017 | |
nqp_get_sc_object $P3019, "1307988392.89946", 41 | |
nqp_get_sc_object $P3020, "__6MODEL_CORE__", 2 | |
$P3021 = $P3020."new"("@!done" :named("name")) | |
$P3018."add_attribute"($P3019, $P3021) | |
nqp_get_sc_object $P3022, "1307988392.89946", 41 | |
get_how $P3023, $P3022 | |
nqp_get_sc_object $P3024, "1307988392.89946", 41 | |
nqp_get_sc_object $P3025, "__6MODEL_CORE__", 2 | |
$P3026 = $P3025."new"("%!parrot_vtable_mapping" :named("name")) | |
$P3023."add_attribute"($P3024, $P3026) | |
nqp_get_sc_object $P3027, "1307988392.89946", 41 | |
get_how $P3028, $P3027 | |
nqp_get_sc_object $P3029, "1307988392.89946", 41 | |
nqp_get_sc_object $P3030, "__6MODEL_CORE__", 2 | |
$P3031 = $P3030."new"("%!parrot_vtable_handler_mapping" :named("name")) | |
$P3028."add_attribute"($P3029, $P3031) | |
nqp_get_sc_object $P3032, "1307988392.89946", 41 | |
get_how $P3033, $P3032 | |
nqp_get_sc_object $P3034, "1307988392.89946", 41 | |
.const 'Sub' $P3035 = "88_1307988395.99251" | |
$P3033."add_method"($P3034, "new", $P3035) | |
nqp_get_sc_object $P3036, "1307988392.89946", 41 | |
get_how $P3037, $P3036 | |
nqp_get_sc_object $P3038, "1307988392.89946", 41 | |
.const 'Sub' $P3039 = "89_1307988395.99251" | |
$P3037."add_method"($P3038, "BUILD", $P3039) | |
nqp_get_sc_object $P3040, "1307988392.89946", 41 | |
get_how $P3041, $P3040 | |
nqp_get_sc_object $P3042, "1307988392.89946", 41 | |
.const 'Sub' $P3043 = "90_1307988395.99251" | |
$P3041."add_method"($P3042, "new_type", $P3043) | |
nqp_get_sc_object $P3044, "1307988392.89946", 41 | |
get_how $P3045, $P3044 | |
nqp_get_sc_object $P3046, "1307988392.89946", 41 | |
.const 'Sub' $P3047 = "91_1307988395.99251" | |
$P3045."add_method"($P3046, "add_method", $P3047) | |
nqp_get_sc_object $P3048, "1307988392.89946", 41 | |
get_how $P3049, $P3048 | |
nqp_get_sc_object $P3050, "1307988392.89946", 41 | |
.const 'Sub' $P3051 = "92_1307988395.99251" | |
$P3049."add_method"($P3050, "add_multi_method", $P3051) | |
nqp_get_sc_object $P3052, "1307988392.89946", 41 | |
get_how $P3053, $P3052 | |
nqp_get_sc_object $P3054, "1307988392.89946", 41 | |
.const 'Sub' $P3055 = "93_1307988395.99251" | |
$P3053."add_method"($P3054, "add_attribute", $P3055) | |
nqp_get_sc_object $P3056, "1307988392.89946", 41 | |
get_how $P3057, $P3056 | |
nqp_get_sc_object $P3058, "1307988392.89946", 41 | |
.const 'Sub' $P3059 = "94_1307988395.99251" | |
$P3057."add_method"($P3058, "add_parent", $P3059) | |
nqp_get_sc_object $P3060, "1307988392.89946", 41 | |
get_how $P3061, $P3060 | |
nqp_get_sc_object $P3062, "1307988392.89946", 41 | |
.const 'Sub' $P3063 = "96_1307988395.99251" | |
$P3061."add_method"($P3062, "set_default_parent", $P3063) | |
nqp_get_sc_object $P3064, "1307988392.89946", 41 | |
get_how $P3065, $P3064 | |
nqp_get_sc_object $P3066, "1307988392.89946", 41 | |
.const 'Sub' $P3067 = "97_1307988395.99251" | |
$P3065."add_method"($P3066, "add_role", $P3067) | |
nqp_get_sc_object $P3068, "1307988392.89946", 41 | |
get_how $P3069, $P3068 | |
nqp_get_sc_object $P3070, "1307988392.89946", 41 | |
.const 'Sub' $P3071 = "99_1307988395.99251" | |
$P3069."add_method"($P3070, "add_parrot_vtable_mapping", $P3071) | |
nqp_get_sc_object $P3072, "1307988392.89946", 41 | |
get_how $P3073, $P3072 | |
nqp_get_sc_object $P3074, "1307988392.89946", 41 | |
.const 'Sub' $P3075 = "100_1307988395.99251" | |
$P3073."add_method"($P3074, "add_parrot_vtable_handler_mapping", $P3075) | |
nqp_get_sc_object $P3076, "1307988392.89946", 41 | |
get_how $P3077, $P3076 | |
nqp_get_sc_object $P3078, "1307988392.89946", 41 | |
.const 'Sub' $P3079 = "101_1307988395.99251" | |
$P3077."add_method"($P3078, "compose", $P3079) | |
nqp_get_sc_object $P3080, "1307988392.89946", 41 | |
get_how $P3081, $P3080 | |
nqp_get_sc_object $P3082, "1307988392.89946", 41 | |
.const 'Sub' $P3083 = "105_1307988395.99251" | |
$P3081."add_method"($P3082, "incorporate_multi_candidates", $P3083) | |
nqp_get_sc_object $P3084, "1307988392.89946", 41 | |
get_how $P3085, $P3084 | |
nqp_get_sc_object $P3086, "1307988392.89946", 41 | |
.const 'Sub' $P3087 = "110_1307988395.99251" | |
$P3085."add_method"($P3086, "publish_type_cache", $P3087) | |
nqp_get_sc_object $P3088, "1307988392.89946", 41 | |
get_how $P3089, $P3088 | |
nqp_get_sc_object $P3090, "1307988392.89946", 41 | |
.const 'Sub' $P3091 = "113_1307988395.99251" | |
$P3089."add_method"($P3090, "publish_method_cache", $P3091) | |
nqp_get_sc_object $P3092, "1307988392.89946", 41 | |
get_how $P3093, $P3092 | |
nqp_get_sc_object $P3094, "1307988392.89946", 41 | |
.const 'Sub' $P3095 = "116_1307988395.99251" | |
$P3093."add_method"($P3094, "publish_parrot_vtable_mapping", $P3095) | |
nqp_get_sc_object $P3096, "1307988392.89946", 41 | |
get_how $P3097, $P3096 | |
nqp_get_sc_object $P3098, "1307988392.89946", 41 | |
.const 'Sub' $P3099 = "119_1307988395.99251" | |
$P3097."add_method"($P3098, "publish_parrot_vtablee_handler_mapping", $P3099) | |
nqp_get_sc_object $P3100, "1307988392.89946", 41 | |
get_how $P3101, $P3100 | |
nqp_get_sc_object $P3102, "1307988392.89946", 41 | |
.const 'Sub' $P3103 = "122_1307988395.99251" | |
$P3101."add_method"($P3102, "parents", $P3103) | |
nqp_get_sc_object $P3104, "1307988392.89946", 41 | |
get_how $P3105, $P3104 | |
nqp_get_sc_object $P3106, "1307988392.89946", 41 | |
.const 'Sub' $P3107 = "123_1307988395.99251" | |
$P3105."add_method"($P3106, "roles", $P3107) | |
nqp_get_sc_object $P3108, "1307988392.89946", 41 | |
get_how $P3109, $P3108 | |
nqp_get_sc_object $P3110, "1307988392.89946", 41 | |
.const 'Sub' $P3111 = "124_1307988395.99251" | |
$P3109."add_method"($P3110, "methods", $P3111) | |
nqp_get_sc_object $P3112, "1307988392.89946", 41 | |
get_how $P3113, $P3112 | |
nqp_get_sc_object $P3114, "1307988392.89946", 41 | |
.const 'Sub' $P3115 = "126_1307988395.99251" | |
$P3113."add_method"($P3114, "method_table", $P3115) | |
nqp_get_sc_object $P3116, "1307988392.89946", 41 | |
get_how $P3117, $P3116 | |
nqp_get_sc_object $P3118, "1307988392.89946", 41 | |
.const 'Sub' $P3119 = "127_1307988395.99251" | |
$P3117."add_method"($P3118, "name", $P3119) | |
nqp_get_sc_object $P3120, "1307988392.89946", 41 | |
get_how $P3121, $P3120 | |
nqp_get_sc_object $P3122, "1307988392.89946", 41 | |
.const 'Sub' $P3123 = "128_1307988395.99251" | |
$P3121."add_method"($P3122, "attributes", $P3123) | |
nqp_get_sc_object $P3124, "1307988392.89946", 41 | |
get_how $P3125, $P3124 | |
nqp_get_sc_object $P3126, "1307988392.89946", 41 | |
.const 'Sub' $P3127 = "130_1307988395.99251" | |
$P3125."add_method"($P3126, "parrot_vtable_mappings", $P3127) | |
nqp_get_sc_object $P3128, "1307988392.89946", 41 | |
get_how $P3129, $P3128 | |
nqp_get_sc_object $P3130, "1307988392.89946", 41 | |
.const 'Sub' $P3131 = "131_1307988395.99251" | |
$P3129."add_method"($P3130, "parrot_vtable_handler_mappings", $P3131) | |
nqp_get_sc_object $P3132, "1307988392.89946", 41 | |
get_how $P3133, $P3132 | |
nqp_get_sc_object $P3134, "1307988392.89946", 41 | |
.const 'Sub' $P3135 = "132_1307988395.99251" | |
$P3133."add_method"($P3134, "isa", $P3135) | |
nqp_get_sc_object $P3136, "1307988392.89946", 41 | |
get_how $P3137, $P3136 | |
nqp_get_sc_object $P3138, "1307988392.89946", 41 | |
.const 'Sub' $P3139 = "133_1307988395.99251" | |
$P3137."add_method"($P3138, "does", $P3139) | |
nqp_get_sc_object $P3140, "1307988392.89946", 41 | |
get_how $P3141, $P3140 | |
nqp_get_sc_object $P3142, "1307988392.89946", 41 | |
.const 'Sub' $P3143 = "134_1307988395.99251" | |
$P3141."add_method"($P3142, "can", $P3143) | |
nqp_get_sc_object $P3144, "1307988392.89946", 41 | |
get_how $P3145, $P3144 | |
nqp_get_sc_object $P3146, "1307988392.89946", 41 | |
.const 'Sub' $P3147 = "136_1307988395.99251" | |
$P3145."add_method"($P3146, "find_method", $P3147) | |
.const 'Sub' $P3148 = "77_1307988395.99251" | |
$P3149 = $P3148."get_lexinfo"() | |
nqp_get_sc_object $P3150, "1307988392.89946", 41 | |
$P3149."set_static_lexpad_value"("$?PACKAGE", $P3150) | |
.const 'Sub' $P3151 = "77_1307988395.99251" | |
$P3152 = $P3151."get_lexinfo"() | |
$P3152."finish_static_lexpad"() | |
.const 'Sub' $P3153 = "77_1307988395.99251" | |
$P3154 = $P3153."get_lexinfo"() | |
nqp_get_sc_object $P3155, "1307988392.89946", 41 | |
$P3154."set_static_lexpad_value"("$?CLASS", $P3155) | |
.const 'Sub' $P3156 = "77_1307988395.99251" | |
$P3157 = $P3156."get_lexinfo"() | |
$P3157."finish_static_lexpad"() | |
nqp_get_sc_object $P3158, "1307988392.89946", 41 | |
get_how $P3159, $P3158 | |
nqp_get_sc_object $P3160, "1307988392.89946", 41 | |
$P3159."compose"($P3160) | |
nqp_get_sc_object $P3161, "__6MODEL_CORE__", 0 | |
$P3162 = $P3161."new_type"("NQPNativeHOW" :named("name")) | |
nqp_set_sc_for_object $P3162, cur_sc | |
nqp_set_sc_object "1307988392.89946", 71, $P3162 | |
nqp_get_sc_object $P3163, "1307988392.89946", 71 | |
nqp_get_sc_object $P3164, "1307988392.89946", 0 | |
get_who $P3165, $P3164 | |
set $P3165["NQPNativeHOW"], $P3163 | |
.const 'Sub' $P3166 = "10_1307988395.99251" | |
$P3167 = $P3166."get_lexinfo"() | |
nqp_get_sc_object $P3168, "1307988392.89946", 71 | |
$P3167."set_static_lexpad_value"("NQPNativeHOW", $P3168) | |
.const 'Sub' $P3169 = "10_1307988395.99251" | |
$P3170 = $P3169."get_lexinfo"() | |
$P3170."finish_static_lexpad"() | |
nqp_get_sc_object $P3171, "1307988392.89946", 71 | |
get_how $P3172, $P3171 | |
nqp_get_sc_object $P3173, "1307988392.89946", 71 | |
nqp_get_sc_object $P3174, "__6MODEL_CORE__", 2 | |
$P3175 = $P3174."new"("$!name" :named("name")) | |
$P3172."add_attribute"($P3173, $P3175) | |
nqp_get_sc_object $P3176, "1307988392.89946", 71 | |
get_how $P3177, $P3176 | |
nqp_get_sc_object $P3178, "1307988392.89946", 71 | |
nqp_get_sc_object $P3179, "__6MODEL_CORE__", 2 | |
$P3180 = $P3179."new"("$!composed" :named("name")) | |
$P3177."add_attribute"($P3178, $P3180) | |
nqp_get_sc_object $P3181, "1307988392.89946", 71 | |
get_how $P3182, $P3181 | |
nqp_get_sc_object $P3183, "1307988392.89946", 71 | |
.const 'Sub' $P3184 = "139_1307988395.99251" | |
$P3182."add_method"($P3183, "new", $P3184) | |
nqp_get_sc_object $P3185, "1307988392.89946", 71 | |
get_how $P3186, $P3185 | |
nqp_get_sc_object $P3187, "1307988392.89946", 71 | |
.const 'Sub' $P3188 = "140_1307988395.99251" | |
$P3186."add_method"($P3187, "BUILD", $P3188) | |
nqp_get_sc_object $P3189, "1307988392.89946", 71 | |
get_how $P3190, $P3189 | |
nqp_get_sc_object $P3191, "1307988392.89946", 71 | |
.const 'Sub' $P3192 = "141_1307988395.99251" | |
$P3190."add_method"($P3191, "new_type", $P3192) | |
nqp_get_sc_object $P3193, "1307988392.89946", 71 | |
get_how $P3194, $P3193 | |
nqp_get_sc_object $P3195, "1307988392.89946", 71 | |
.const 'Sub' $P3196 = "142_1307988395.99251" | |
$P3194."add_method"($P3195, "add_method", $P3196) | |
nqp_get_sc_object $P3197, "1307988392.89946", 71 | |
get_how $P3198, $P3197 | |
nqp_get_sc_object $P3199, "1307988392.89946", 71 | |
.const 'Sub' $P3200 = "143_1307988395.99251" | |
$P3198."add_method"($P3199, "add_multi_method", $P3200) | |
nqp_get_sc_object $P3201, "1307988392.89946", 71 | |
get_how $P3202, $P3201 | |
nqp_get_sc_object $P3203, "1307988392.89946", 71 | |
.const 'Sub' $P3204 = "144_1307988395.99251" | |
$P3202."add_method"($P3203, "add_attribute", $P3204) | |
nqp_get_sc_object $P3205, "1307988392.89946", 71 | |
get_how $P3206, $P3205 | |
nqp_get_sc_object $P3207, "1307988392.89946", 71 | |
.const 'Sub' $P3208 = "145_1307988395.99251" | |
$P3206."add_method"($P3207, "compose", $P3208) | |
nqp_get_sc_object $P3209, "1307988392.89946", 71 | |
get_how $P3210, $P3209 | |
nqp_get_sc_object $P3211, "1307988392.89946", 71 | |
.const 'Sub' $P3212 = "146_1307988395.99251" | |
$P3210."add_method"($P3211, "name", $P3212) | |
.const 'Sub' $P3213 = "138_1307988395.99251" | |
$P3214 = $P3213."get_lexinfo"() | |
nqp_get_sc_object $P3215, "1307988392.89946", 71 | |
$P3214."set_static_lexpad_value"("$?PACKAGE", $P3215) | |
.const 'Sub' $P3216 = "138_1307988395.99251" | |
$P3217 = $P3216."get_lexinfo"() | |
$P3217."finish_static_lexpad"() | |
.const 'Sub' $P3218 = "138_1307988395.99251" | |
$P3219 = $P3218."get_lexinfo"() | |
nqp_get_sc_object $P3220, "1307988392.89946", 71 | |
$P3219."set_static_lexpad_value"("$?CLASS", $P3220) | |
.const 'Sub' $P3221 = "138_1307988395.99251" | |
$P3222 = $P3221."get_lexinfo"() | |
$P3222."finish_static_lexpad"() | |
nqp_get_sc_object $P3223, "1307988392.89946", 71 | |
get_how $P3224, $P3223 | |
nqp_get_sc_object $P3225, "1307988392.89946", 71 | |
$P3224."compose"($P3225) | |
nqp_get_sc_object $P3226, "__6MODEL_CORE__", 0 | |
$P3227 = $P3226."new_type"("NQPAttribute" :named("name")) | |
nqp_set_sc_for_object $P3227, cur_sc | |
nqp_set_sc_object "1307988392.89946", 80, $P3227 | |
nqp_get_sc_object $P3228, "1307988392.89946", 80 | |
nqp_get_sc_object $P3229, "1307988392.89946", 0 | |
get_who $P3230, $P3229 | |
set $P3230["NQPAttribute"], $P3228 | |
.const 'Sub' $P3231 = "10_1307988395.99251" | |
$P3232 = $P3231."get_lexinfo"() | |
nqp_get_sc_object $P3233, "1307988392.89946", 80 | |
$P3232."set_static_lexpad_value"("NQPAttribute", $P3233) | |
.const 'Sub' $P3234 = "10_1307988395.99251" | |
$P3235 = $P3234."get_lexinfo"() | |
$P3235."finish_static_lexpad"() | |
nqp_get_sc_object $P3236, "1307988392.89946", 80 | |
get_how $P3237, $P3236 | |
nqp_get_sc_object $P3238, "1307988392.89946", 80 | |
nqp_get_sc_object $P3239, "__6MODEL_CORE__", 2 | |
$P3240 = $P3239."new"("$!name" :named("name")) | |
$P3237."add_attribute"($P3238, $P3240) | |
nqp_get_sc_object $P3241, "1307988392.89946", 80 | |
get_how $P3242, $P3241 | |
nqp_get_sc_object $P3243, "1307988392.89946", 80 | |
nqp_get_sc_object $P3244, "__6MODEL_CORE__", 2 | |
$P3245 = $P3244."new"("$!type" :named("name")) | |
$P3242."add_attribute"($P3243, $P3245) | |
nqp_get_sc_object $P3246, "1307988392.89946", 80 | |
get_how $P3247, $P3246 | |
nqp_get_sc_object $P3248, "1307988392.89946", 80 | |
nqp_get_sc_object $P3249, "__6MODEL_CORE__", 2 | |
$P3250 = $P3249."new"("$!box_target" :named("name")) | |
$P3247."add_attribute"($P3248, $P3250) | |
nqp_get_sc_object $P3251, "1307988392.89946", 80 | |
get_how $P3252, $P3251 | |
nqp_get_sc_object $P3253, "1307988392.89946", 80 | |
.const 'Sub' $P3254 = "150_1307988395.99251" | |
$P3252."add_method"($P3253, "new", $P3254) | |
nqp_get_sc_object $P3255, "1307988392.89946", 80 | |
get_how $P3256, $P3255 | |
nqp_get_sc_object $P3257, "1307988392.89946", 80 | |
.const 'Sub' $P3258 = "151_1307988395.99251" | |
$P3256."add_method"($P3257, "BUILD", $P3258) | |
nqp_get_sc_object $P3259, "1307988392.89946", 80 | |
get_how $P3260, $P3259 | |
nqp_get_sc_object $P3261, "1307988392.89946", 80 | |
.const 'Sub' $P3262 = "152_1307988395.99251" | |
$P3260."add_method"($P3261, "name", $P3262) | |
nqp_get_sc_object $P3263, "1307988392.89946", 80 | |
get_how $P3264, $P3263 | |
nqp_get_sc_object $P3265, "1307988392.89946", 80 | |
.const 'Sub' $P3266 = "153_1307988395.99251" | |
$P3264."add_method"($P3265, "type", $P3266) | |
nqp_get_sc_object $P3267, "1307988392.89946", 80 | |
get_how $P3268, $P3267 | |
nqp_get_sc_object $P3269, "1307988392.89946", 80 | |
.const 'Sub' $P3270 = "154_1307988395.99251" | |
$P3268."add_method"($P3269, "box_target", $P3270) | |
nqp_get_sc_object $P3271, "1307988392.89946", 80 | |
get_how $P3272, $P3271 | |
nqp_get_sc_object $P3273, "1307988392.89946", 80 | |
.const 'Sub' $P3274 = "155_1307988395.99251" | |
$P3272."add_method"($P3273, "compose", $P3274) | |
nqp_get_sc_object $P3275, "1307988392.89946", 80 | |
get_how $P3276, $P3275 | |
nqp_get_sc_object $P3277, "1307988392.89946", 80 | |
.const 'Sub' $P3278 = "160_1307988395.99251" | |
$P3276."add_method"($P3277, "has_mutator", $P3278) | |
.const 'Sub' $P3279 = "147_1307988395.99251" | |
$P3280 = $P3279."get_lexinfo"() | |
nqp_get_sc_object $P3281, "1307988392.89946", 80 | |
$P3280."set_static_lexpad_value"("$?PACKAGE", $P3281) | |
.const 'Sub' $P3282 = "147_1307988395.99251" | |
$P3283 = $P3282."get_lexinfo"() | |
$P3283."finish_static_lexpad"() | |
.const 'Sub' $P3284 = "147_1307988395.99251" | |
$P3285 = $P3284."get_lexinfo"() | |
nqp_get_sc_object $P3286, "1307988392.89946", 80 | |
$P3285."set_static_lexpad_value"("$?CLASS", $P3286) | |
.const 'Sub' $P3287 = "147_1307988395.99251" | |
$P3288 = $P3287."get_lexinfo"() | |
$P3288."finish_static_lexpad"() | |
nqp_get_sc_object $P3289, "1307988392.89946", 80 | |
get_how $P3290, $P3289 | |
nqp_get_sc_object $P3291, "1307988392.89946", 80 | |
$P3290."compose"($P3291) | |
nqp_get_sc_object $P3292, "__6MODEL_CORE__", 0 | |
$P3293 = $P3292."new_type"("NQPModuleHOW" :named("name")) | |
nqp_set_sc_for_object $P3293, cur_sc | |
nqp_set_sc_object "1307988392.89946", 88, $P3293 | |
nqp_get_sc_object $P3294, "1307988392.89946", 88 | |
nqp_get_sc_object $P3295, "1307988392.89946", 0 | |
get_who $P3296, $P3295 | |
set $P3296["NQPModuleHOW"], $P3294 | |
.const 'Sub' $P3297 = "10_1307988395.99251" | |
$P3298 = $P3297."get_lexinfo"() | |
nqp_get_sc_object $P3299, "1307988392.89946", 88 | |
$P3298."set_static_lexpad_value"("NQPModuleHOW", $P3299) | |
.const 'Sub' $P3300 = "10_1307988395.99251" | |
$P3301 = $P3300."get_lexinfo"() | |
$P3301."finish_static_lexpad"() | |
nqp_get_sc_object $P3302, "1307988392.89946", 88 | |
get_how $P3303, $P3302 | |
nqp_get_sc_object $P3304, "1307988392.89946", 88 | |
nqp_get_sc_object $P3305, "__6MODEL_CORE__", 2 | |
$P3306 = $P3305."new"("$!name" :named("name")) | |
$P3303."add_attribute"($P3304, $P3306) | |
nqp_get_sc_object $P3307, "1307988392.89946", 88 | |
get_how $P3308, $P3307 | |
nqp_get_sc_object $P3309, "1307988392.89946", 88 | |
nqp_get_sc_object $P3310, "__6MODEL_CORE__", 2 | |
$P3311 = $P3310."new"("$!composed" :named("name")) | |
$P3308."add_attribute"($P3309, $P3311) | |
nqp_get_sc_object $P3312, "1307988392.89946", 88 | |
get_how $P3313, $P3312 | |
nqp_get_sc_object $P3314, "1307988392.89946", 88 | |
.const 'Sub' $P3315 = "162_1307988395.99251" | |
$P3313."add_method"($P3314, "new", $P3315) | |
nqp_get_sc_object $P3316, "1307988392.89946", 88 | |
get_how $P3317, $P3316 | |
nqp_get_sc_object $P3318, "1307988392.89946", 88 | |
.const 'Sub' $P3319 = "163_1307988395.99251" | |
$P3317."add_method"($P3318, "BUILD", $P3319) | |
nqp_get_sc_object $P3320, "1307988392.89946", 88 | |
get_how $P3321, $P3320 | |
nqp_get_sc_object $P3322, "1307988392.89946", 88 | |
.const 'Sub' $P3323 = "164_1307988395.99251" | |
$P3321."add_method"($P3322, "new_type", $P3323) | |
nqp_get_sc_object $P3324, "1307988392.89946", 88 | |
get_how $P3325, $P3324 | |
nqp_get_sc_object $P3326, "1307988392.89946", 88 | |
.const 'Sub' $P3327 = "165_1307988395.99251" | |
$P3325."add_method"($P3326, "add_method", $P3327) | |
nqp_get_sc_object $P3328, "1307988392.89946", 88 | |
get_how $P3329, $P3328 | |
nqp_get_sc_object $P3330, "1307988392.89946", 88 | |
.const 'Sub' $P3331 = "166_1307988395.99251" | |
$P3329."add_method"($P3330, "add_multi_method", $P3331) | |
nqp_get_sc_object $P3332, "1307988392.89946", 88 | |
get_how $P3333, $P3332 | |
nqp_get_sc_object $P3334, "1307988392.89946", 88 | |
.const 'Sub' $P3335 = "167_1307988395.99251" | |
$P3333."add_method"($P3334, "add_attribute", $P3335) | |
nqp_get_sc_object $P3336, "1307988392.89946", 88 | |
get_how $P3337, $P3336 | |
nqp_get_sc_object $P3338, "1307988392.89946", 88 | |
.const 'Sub' $P3339 = "168_1307988395.99251" | |
$P3337."add_method"($P3338, "compose", $P3339) | |
nqp_get_sc_object $P3340, "1307988392.89946", 88 | |
get_how $P3341, $P3340 | |
nqp_get_sc_object $P3342, "1307988392.89946", 88 | |
.const 'Sub' $P3343 = "169_1307988395.99251" | |
$P3341."add_method"($P3342, "name", $P3343) | |
.const 'Sub' $P3344 = "161_1307988395.99251" | |
$P3345 = $P3344."get_lexinfo"() | |
nqp_get_sc_object $P3346, "1307988392.89946", 88 | |
$P3345."set_static_lexpad_value"("$?PACKAGE", $P3346) | |
.const 'Sub' $P3347 = "161_1307988395.99251" | |
$P3348 = $P3347."get_lexinfo"() | |
$P3348."finish_static_lexpad"() | |
.const 'Sub' $P3349 = "161_1307988395.99251" | |
$P3350 = $P3349."get_lexinfo"() | |
nqp_get_sc_object $P3351, "1307988392.89946", 88 | |
$P3350."set_static_lexpad_value"("$?CLASS", $P3351) | |
.const 'Sub' $P3352 = "161_1307988395.99251" | |
$P3353 = $P3352."get_lexinfo"() | |
$P3353."finish_static_lexpad"() | |
nqp_get_sc_object $P3354, "1307988392.89946", 88 | |
get_how $P3355, $P3354 | |
nqp_get_sc_object $P3356, "1307988392.89946", 88 | |
$P3355."compose"($P3356) | |
nqp_get_sc_object $P3357, "__6MODEL_CORE__", 0 | |
$P3358 = $P3357."new_type"("EXPORTHOW" :named("name")) | |
nqp_set_sc_for_object $P3358, cur_sc | |
nqp_set_sc_object "1307988392.89946", 97, $P3358 | |
.const 'Sub' $P3359 = "10_1307988395.99251" | |
$P3360 = $P3359."get_lexinfo"() | |
nqp_get_sc_object $P3361, "1307988392.89946", 97 | |
$P3360."set_static_lexpad_value"("EXPORTHOW", $P3361) | |
.const 'Sub' $P3362 = "10_1307988395.99251" | |
$P3363 = $P3362."get_lexinfo"() | |
$P3363."finish_static_lexpad"() | |
.const 'Sub' $P3364 = "170_1307988395.99251" | |
$P3365 = $P3364."get_lexinfo"() | |
nqp_get_sc_object $P3366, "1307988392.89946", 97 | |
$P3365."set_static_lexpad_value"("$?PACKAGE", $P3366) | |
.const 'Sub' $P3367 = "170_1307988395.99251" | |
$P3368 = $P3367."get_lexinfo"() | |
$P3368."finish_static_lexpad"() | |
.const 'Sub' $P3369 = "170_1307988395.99251" | |
$P3370 = $P3369."get_lexinfo"() | |
nqp_get_sc_object $P3371, "1307988392.89946", 97 | |
$P3370."set_static_lexpad_value"("$?CLASS", $P3371) | |
.const 'Sub' $P3372 = "170_1307988395.99251" | |
$P3373 = $P3372."get_lexinfo"() | |
$P3373."finish_static_lexpad"() | |
nqp_get_sc_object $P3374, "1307988392.89946", 97 | |
get_how $P3375, $P3374 | |
nqp_get_sc_object $P3376, "1307988392.89946", 97 | |
$P3375."compose"($P3376) | |
if_2617_end: | |
nqp_get_sc_object $P3698, "1307988392.89946", 0 | |
set_hll_global "GLOBAL", $P3698 | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.sub "_block36" :subid("11_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 5 | |
.const 'Sub' $P42 = "12_1307988395.99251" | |
capture_lex $P42 | |
set $P39, $P38 | |
.lex "$?PACKAGE", $P39 | |
set $P41, $P40 | |
.lex "$?CLASS", $P41 | |
.annotate 'line', 6 | |
.const 'Sub' $P42 = "12_1307988395.99251" | |
newclosure $P276, $P42 | |
.annotate 'line', 5 | |
.return ($P276) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.include "except_types.pasm" | |
.sub "apply" :anon :subid("12_1307988395.99251") :outer("11_1307988395.99251") | |
.param pmc param_45 | |
.param pmc param_46 | |
.param pmc param_47 | |
.annotate 'line', 6 | |
.const 'Sub' $P198 = "18_1307988395.99251" | |
capture_lex $P198 | |
.const 'Sub' $P154 = "17_1307988395.99251" | |
capture_lex $P154 | |
.const 'Sub' $P140 = "16_1307988395.99251" | |
capture_lex $P140 | |
.const 'Sub' $P62 = "13_1307988395.99251" | |
capture_lex $P62 | |
new $P44, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P44, control_43 | |
push_eh $P44 | |
.lex "self", param_45 | |
.lex "$target", param_46 | |
.lex "@roles", param_47 | |
.annotate 'line', 8 | |
$P48 = root_new ['parrot';'Hash'] | |
set $P49, $P48 | |
.lex "%meth_info", $P49 | |
.annotate 'line', 34 | |
$P50 = root_new ['parrot';'Hash'] | |
set $P51, $P50 | |
.lex "%target_meth_info", $P51 | |
.annotate 'line', 35 | |
$P52 = root_new ['parrot';'ResizablePMCArray'] | |
set $P53, $P52 | |
.lex "@target_meths", $P53 | |
.annotate 'line', 60 | |
$P54 = root_new ['parrot';'ResizablePMCArray'] | |
set $P55, $P54 | |
.lex "@all_roles", $P55 | |
.annotate 'line', 6 | |
find_lex $P56, "%meth_info" | |
unless_null $P56, vivify_173 | |
$P56 = root_new ['parrot';'Hash'] | |
vivify_173: | |
.annotate 'line', 9 | |
find_lex $P58, "@roles" | |
unless_null $P58, vivify_174 | |
$P58 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_174: | |
defined $I59, $P58 | |
unless $I59, for_undef_175 | |
iter $P57, $P58 | |
new $P128, 'ExceptionHandler' | |
set_label $P128, loop127_handler | |
$P128."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P128 | |
loop127_test: | |
unless $P57, loop127_done | |
shift $P60, $P57 | |
loop127_redo: | |
.const 'Sub' $P62 = "13_1307988395.99251" | |
capture_lex $P62 | |
$P62($P60) | |
loop127_next: | |
goto loop127_test | |
loop127_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P129, exception, 'type' | |
eq $P129, .CONTROL_LOOP_NEXT, loop127_next | |
eq $P129, .CONTROL_LOOP_REDO, loop127_redo | |
loop127_done: | |
pop_eh | |
for_undef_175: | |
find_lex $P130, "%target_meth_info" | |
unless_null $P130, vivify_199 | |
$P130 = root_new ['parrot';'Hash'] | |
vivify_199: | |
.annotate 'line', 35 | |
find_lex $P131, "$target" | |
unless_null $P131, vivify_200 | |
new $P131, "Undef" | |
vivify_200: | |
get_how $P132, $P131 | |
find_lex $P133, "$target" | |
unless_null $P133, vivify_201 | |
new $P133, "Undef" | |
vivify_201: | |
$P134 = $P132."methods"($P133) | |
store_lex "@target_meths", $P134 | |
.annotate 'line', 36 | |
find_lex $P136, "@target_meths" | |
unless_null $P136, vivify_202 | |
$P136 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_202: | |
defined $I137, $P136 | |
unless $I137, for_undef_203 | |
iter $P135, $P136 | |
new $P147, 'ExceptionHandler' | |
set_label $P147, loop146_handler | |
$P147."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P147 | |
loop146_test: | |
unless $P135, loop146_done | |
shift $P138, $P135 | |
loop146_redo: | |
.const 'Sub' $P140 = "16_1307988395.99251" | |
capture_lex $P140 | |
$P140($P138) | |
loop146_next: | |
goto loop146_test | |
loop146_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P148, exception, 'type' | |
eq $P148, .CONTROL_LOOP_NEXT, loop146_next | |
eq $P148, .CONTROL_LOOP_REDO, loop146_redo | |
loop146_done: | |
pop_eh | |
for_undef_203: | |
.annotate 'line', 41 | |
find_lex $P150, "%meth_info" | |
unless_null $P150, vivify_207 | |
$P150 = root_new ['parrot';'Hash'] | |
vivify_207: | |
defined $I151, $P150 | |
unless $I151, for_undef_208 | |
iter $P149, $P150 | |
new $P190, 'ExceptionHandler' | |
set_label $P190, loop189_handler | |
$P190."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P190 | |
loop189_test: | |
unless $P149, loop189_done | |
shift $P152, $P149 | |
loop189_redo: | |
.const 'Sub' $P154 = "17_1307988395.99251" | |
capture_lex $P154 | |
$P154($P152) | |
loop189_next: | |
goto loop189_test | |
loop189_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P191, exception, 'type' | |
eq $P191, .CONTROL_LOOP_NEXT, loop189_next | |
eq $P191, .CONTROL_LOOP_REDO, loop189_redo | |
loop189_done: | |
pop_eh | |
for_undef_208: | |
find_lex $P192, "@all_roles" | |
unless_null $P192, vivify_225 | |
$P192 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_225: | |
.annotate 'line', 61 | |
find_lex $P194, "@roles" | |
unless_null $P194, vivify_226 | |
$P194 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_226: | |
defined $I195, $P194 | |
unless $I195, for_undef_227 | |
iter $P193, $P194 | |
new $P271, 'ExceptionHandler' | |
set_label $P271, loop270_handler | |
$P271."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P271 | |
loop270_test: | |
unless $P193, loop270_done | |
shift $P196, $P193 | |
loop270_redo: | |
.const 'Sub' $P198 = "18_1307988395.99251" | |
capture_lex $P198 | |
$P198($P196) | |
loop270_next: | |
goto loop270_test | |
loop270_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P272, exception, 'type' | |
eq $P272, .CONTROL_LOOP_NEXT, loop270_next | |
eq $P272, .CONTROL_LOOP_REDO, loop270_redo | |
loop270_done: | |
pop_eh | |
for_undef_227: | |
.annotate 'line', 90 | |
new $P273, "Exception" | |
set $P273['type'], .CONTROL_RETURN | |
find_lex $P274, "@all_roles" | |
unless_null $P274, vivify_249 | |
$P274 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_249: | |
setattribute $P273, 'payload', $P274 | |
throw $P273 | |
.annotate 'line', 6 | |
.return () | |
control_43: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P275, exception, "payload" | |
.return ($P275) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.include "except_types.pasm" | |
.sub "_block61" :anon :subid("13_1307988395.99251") :outer("12_1307988395.99251") | |
.param pmc param_65 | |
.annotate 'line', 9 | |
.const 'Sub' $P75 = "14_1307988395.99251" | |
capture_lex $P75 | |
.annotate 'line', 10 | |
$P63 = root_new ['parrot';'ResizablePMCArray'] | |
set $P64, $P63 | |
.lex "@methods", $P64 | |
.lex "$_", param_65 | |
find_lex $P66, "$_" | |
unless_null $P66, vivify_176 | |
new $P66, "Undef" | |
vivify_176: | |
get_how $P67, $P66 | |
find_lex $P68, "$_" | |
unless_null $P68, vivify_177 | |
new $P68, "Undef" | |
vivify_177: | |
$P69 = $P67."methods"($P68) | |
store_lex "@methods", $P69 | |
.annotate 'line', 11 | |
find_lex $P71, "@methods" | |
unless_null $P71, vivify_178 | |
$P71 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_178: | |
defined $I72, $P71 | |
unless $I72, for_undef_179 | |
iter $P70, $P71 | |
new $P125, 'ExceptionHandler' | |
set_label $P125, loop124_handler | |
$P125."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P125 | |
loop124_test: | |
unless $P70, loop124_done | |
shift $P73, $P70 | |
loop124_redo: | |
.const 'Sub' $P75 = "14_1307988395.99251" | |
capture_lex $P75 | |
$P75($P73) | |
loop124_next: | |
goto loop124_test | |
loop124_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P126, exception, 'type' | |
eq $P126, .CONTROL_LOOP_NEXT, loop124_next | |
eq $P126, .CONTROL_LOOP_REDO, loop124_redo | |
loop124_done: | |
pop_eh | |
for_undef_179: | |
.annotate 'line', 9 | |
.return ($P70) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.include "except_types.pasm" | |
.sub "_block74" :anon :subid("14_1307988395.99251") :outer("13_1307988395.99251") | |
.param pmc param_84 | |
.annotate 'line', 11 | |
.const 'Sub' $P107 = "15_1307988395.99251" | |
capture_lex $P107 | |
.annotate 'line', 12 | |
new $P76, "Undef" | |
set $P77, $P76 | |
.lex "$name", $P77 | |
.annotate 'line', 13 | |
new $P78, "Undef" | |
set $P79, $P78 | |
.lex "$meth", $P79 | |
.annotate 'line', 14 | |
$P80 = root_new ['parrot';'ResizablePMCArray'] | |
set $P81, $P80 | |
.lex "@meth_list", $P81 | |
.annotate 'line', 21 | |
new $P82, "Undef" | |
set $P83, $P82 | |
.lex "$found", $P83 | |
.lex "$_", param_84 | |
.annotate 'line', 12 | |
find_lex $P85, "$_" | |
unless_null $P85, vivify_180 | |
new $P85, "Undef" | |
vivify_180: | |
set $S86, $P85 | |
new $P87, 'String' | |
set $P87, $S86 | |
store_lex "$name", $P87 | |
.annotate 'line', 13 | |
find_lex $P88, "$_" | |
unless_null $P88, vivify_181 | |
new $P88, "Undef" | |
vivify_181: | |
store_lex "$meth", $P88 | |
find_lex $P89, "@meth_list" | |
unless_null $P89, vivify_182 | |
$P89 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_182: | |
.annotate 'line', 15 | |
find_lex $P91, "$name" | |
unless_null $P91, vivify_183 | |
new $P91, "Undef" | |
vivify_183: | |
find_lex $P92, "%meth_info" | |
unless_null $P92, vivify_184 | |
$P92 = root_new ['parrot';'Hash'] | |
vivify_184: | |
set $P93, $P92[$P91] | |
unless_null $P93, vivify_185 | |
new $P93, "Undef" | |
vivify_185: | |
defined $I94, $P93 | |
if $I94, if_90 | |
.annotate 'line', 19 | |
find_lex $P98, "@meth_list" | |
unless_null $P98, vivify_186 | |
$P98 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_186: | |
find_lex $P99, "$name" | |
unless_null $P99, vivify_187 | |
new $P99, "Undef" | |
vivify_187: | |
find_lex $P100, "%meth_info" | |
unless_null $P100, vivify_188 | |
$P100 = root_new ['parrot';'Hash'] | |
store_lex "%meth_info", $P100 | |
vivify_188: | |
set $P100[$P99], $P98 | |
.annotate 'line', 18 | |
goto if_90_end | |
if_90: | |
.annotate 'line', 16 | |
find_lex $P95, "$name" | |
unless_null $P95, vivify_189 | |
new $P95, "Undef" | |
vivify_189: | |
find_lex $P96, "%meth_info" | |
unless_null $P96, vivify_190 | |
$P96 = root_new ['parrot';'Hash'] | |
vivify_190: | |
set $P97, $P96[$P95] | |
unless_null $P97, vivify_191 | |
new $P97, "Undef" | |
vivify_191: | |
store_lex "@meth_list", $P97 | |
if_90_end: | |
.annotate 'line', 21 | |
new $P101, "Integer" | |
assign $P101, 0 | |
store_lex "$found", $P101 | |
.annotate 'line', 22 | |
find_lex $P103, "@meth_list" | |
unless_null $P103, vivify_192 | |
$P103 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_192: | |
defined $I104, $P103 | |
unless $I104, for_undef_193 | |
iter $P102, $P103 | |
new $P116, 'ExceptionHandler' | |
set_label $P116, loop115_handler | |
$P116."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P116 | |
loop115_test: | |
unless $P102, loop115_done | |
shift $P105, $P102 | |
loop115_redo: | |
.const 'Sub' $P107 = "15_1307988395.99251" | |
capture_lex $P107 | |
$P107($P105) | |
loop115_next: | |
goto loop115_test | |
loop115_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P117, exception, 'type' | |
eq $P117, .CONTROL_LOOP_NEXT, loop115_next | |
eq $P117, .CONTROL_LOOP_REDO, loop115_redo | |
loop115_done: | |
pop_eh | |
for_undef_193: | |
.annotate 'line', 27 | |
find_lex $P120, "$found" | |
unless_null $P120, vivify_196 | |
new $P120, "Undef" | |
vivify_196: | |
unless $P120, unless_119 | |
set $P118, $P120 | |
goto unless_119_end | |
unless_119: | |
.annotate 'line', 28 | |
find_lex $P121, "@meth_list" | |
unless_null $P121, vivify_197 | |
$P121 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_197: | |
find_lex $P122, "$meth" | |
unless_null $P122, vivify_198 | |
new $P122, "Undef" | |
vivify_198: | |
$P123 = $P121."push"($P122) | |
.annotate 'line', 27 | |
set $P118, $P123 | |
unless_119_end: | |
.annotate 'line', 11 | |
.return ($P118) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.sub "_block106" :anon :subid("15_1307988395.99251") :outer("14_1307988395.99251") | |
.param pmc param_108 | |
.annotate 'line', 22 | |
.lex "$_", param_108 | |
.annotate 'line', 23 | |
find_lex $P111, "$meth" | |
unless_null $P111, vivify_194 | |
new $P111, "Undef" | |
vivify_194: | |
find_lex $P112, "$_" | |
unless_null $P112, vivify_195 | |
new $P112, "Undef" | |
vivify_195: | |
issame $I113, $P111, $P112 | |
if $I113, if_110 | |
new $P109, 'Integer' | |
set $P109, $I113 | |
goto if_110_end | |
if_110: | |
.annotate 'line', 24 | |
new $P114, "Integer" | |
assign $P114, 1 | |
store_lex "$found", $P114 | |
.annotate 'line', 23 | |
set $P109, $P114 | |
if_110_end: | |
.annotate 'line', 22 | |
.return ($P109) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.sub "_block139" :anon :subid("16_1307988395.99251") :outer("12_1307988395.99251") | |
.param pmc param_141 | |
.annotate 'line', 36 | |
.lex "$_", param_141 | |
.annotate 'line', 37 | |
find_lex $P142, "$_" | |
unless_null $P142, vivify_204 | |
new $P142, "Undef" | |
vivify_204: | |
find_lex $P143, "$_" | |
unless_null $P143, vivify_205 | |
new $P143, "Undef" | |
vivify_205: | |
set $S144, $P143 | |
find_lex $P145, "%target_meth_info" | |
unless_null $P145, vivify_206 | |
$P145 = root_new ['parrot';'Hash'] | |
store_lex "%target_meth_info", $P145 | |
vivify_206: | |
set $P145[$S144], $P142 | |
.annotate 'line', 36 | |
.return ($P142) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.sub "_block153" :anon :subid("17_1307988395.99251") :outer("12_1307988395.99251") | |
.param pmc param_159 | |
.annotate 'line', 42 | |
new $P155, "Undef" | |
set $P156, $P155 | |
.lex "$name", $P156 | |
.annotate 'line', 43 | |
$P157 = root_new ['parrot';'ResizablePMCArray'] | |
set $P158, $P157 | |
.lex "@add_meths", $P158 | |
.lex "$_", param_159 | |
.annotate 'line', 42 | |
find_lex $P160, "$_" | |
unless_null $P160, vivify_209 | |
new $P160, "Undef" | |
vivify_209: | |
set $S161, $P160 | |
new $P162, 'String' | |
set $P162, $S161 | |
store_lex "$name", $P162 | |
.annotate 'line', 43 | |
find_lex $P163, "$name" | |
unless_null $P163, vivify_210 | |
new $P163, "Undef" | |
vivify_210: | |
find_lex $P164, "%meth_info" | |
unless_null $P164, vivify_211 | |
$P164 = root_new ['parrot';'Hash'] | |
vivify_211: | |
set $P165, $P164[$P163] | |
unless_null $P165, vivify_212 | |
new $P165, "Undef" | |
vivify_212: | |
store_lex "@add_meths", $P165 | |
.annotate 'line', 47 | |
find_lex $P168, "$name" | |
unless_null $P168, vivify_213 | |
new $P168, "Undef" | |
vivify_213: | |
find_lex $P169, "%target_meth_info" | |
unless_null $P169, vivify_214 | |
$P169 = root_new ['parrot';'Hash'] | |
vivify_214: | |
set $P170, $P169[$P168] | |
unless_null $P170, vivify_215 | |
new $P170, "Undef" | |
vivify_215: | |
defined $I171, $P170 | |
unless $I171, unless_167 | |
new $P166, 'Integer' | |
set $P166, $I171 | |
goto unless_167_end | |
unless_167: | |
.annotate 'line', 49 | |
find_lex $P174, "@add_meths" | |
unless_null $P174, vivify_216 | |
$P174 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_216: | |
set $N175, $P174 | |
iseq $I176, $N175, 1.0 | |
if $I176, if_173 | |
.annotate 'line', 54 | |
find_lex $P184, "$target" | |
unless_null $P184, vivify_217 | |
new $P184, "Undef" | |
vivify_217: | |
get_how $P185, $P184 | |
find_lex $P186, "$target" | |
unless_null $P186, vivify_218 | |
new $P186, "Undef" | |
vivify_218: | |
find_lex $P187, "$name" | |
unless_null $P187, vivify_219 | |
new $P187, "Undef" | |
vivify_219: | |
$P188 = $P185."add_collision"($P186, $P187) | |
.annotate 'line', 52 | |
set $P172, $P188 | |
.annotate 'line', 49 | |
goto if_173_end | |
if_173: | |
.annotate 'line', 50 | |
find_lex $P177, "$target" | |
unless_null $P177, vivify_220 | |
new $P177, "Undef" | |
vivify_220: | |
get_how $P178, $P177 | |
find_lex $P179, "$target" | |
unless_null $P179, vivify_221 | |
new $P179, "Undef" | |
vivify_221: | |
find_lex $P180, "$name" | |
unless_null $P180, vivify_222 | |
new $P180, "Undef" | |
vivify_222: | |
find_lex $P181, "@add_meths" | |
unless_null $P181, vivify_223 | |
$P181 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_223: | |
set $P182, $P181[0] | |
unless_null $P182, vivify_224 | |
new $P182, "Undef" | |
vivify_224: | |
$P183 = $P178."add_method"($P179, $P180, $P182) | |
.annotate 'line', 49 | |
set $P172, $P183 | |
if_173_end: | |
.annotate 'line', 47 | |
set $P166, $P172 | |
unless_167_end: | |
.annotate 'line', 41 | |
.return ($P166) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.include "except_types.pasm" | |
.sub "_block197" :anon :subid("18_1307988395.99251") :outer("12_1307988395.99251") | |
.param pmc param_203 | |
.annotate 'line', 61 | |
.const 'Sub' $P214 = "19_1307988395.99251" | |
capture_lex $P214 | |
.annotate 'line', 62 | |
new $P199, "Undef" | |
set $P200, $P199 | |
.lex "$how", $P200 | |
.annotate 'line', 65 | |
$P201 = root_new ['parrot';'ResizablePMCArray'] | |
set $P202, $P201 | |
.lex "@attributes", $P202 | |
.lex "$_", param_203 | |
.annotate 'line', 62 | |
find_lex $P204, "$_" | |
unless_null $P204, vivify_228 | |
new $P204, "Undef" | |
vivify_228: | |
get_how $P205, $P204 | |
store_lex "$how", $P205 | |
.annotate 'line', 65 | |
find_lex $P206, "$how" | |
unless_null $P206, vivify_229 | |
new $P206, "Undef" | |
vivify_229: | |
find_lex $P207, "$_" | |
unless_null $P207, vivify_230 | |
new $P207, "Undef" | |
vivify_230: | |
$P208 = $P206."attributes"($P207) | |
store_lex "@attributes", $P208 | |
.annotate 'line', 66 | |
find_lex $P210, "@attributes" | |
unless_null $P210, vivify_231 | |
$P210 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_231: | |
defined $I211, $P210 | |
unless $I211, for_undef_232 | |
iter $P209, $P210 | |
new $P265, 'ExceptionHandler' | |
set_label $P265, loop264_handler | |
$P265."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P265 | |
loop264_test: | |
unless $P209, loop264_done | |
shift $P212, $P209 | |
loop264_redo: | |
.const 'Sub' $P214 = "19_1307988395.99251" | |
capture_lex $P214 | |
$P214($P212) | |
loop264_next: | |
goto loop264_test | |
loop264_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P266, exception, 'type' | |
eq $P266, .CONTROL_LOOP_NEXT, loop264_next | |
eq $P266, .CONTROL_LOOP_REDO, loop264_redo | |
loop264_done: | |
pop_eh | |
for_undef_232: | |
.annotate 'line', 87 | |
find_lex $P267, "@all_roles" | |
unless_null $P267, vivify_247 | |
$P267 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_247: | |
find_lex $P268, "$_" | |
unless_null $P268, vivify_248 | |
new $P268, "Undef" | |
vivify_248: | |
$P269 = $P267."push"($P268) | |
.annotate 'line', 61 | |
.return ($P269) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.include "except_types.pasm" | |
.sub "_block213" :anon :subid("19_1307988395.99251") :outer("18_1307988395.99251") | |
.param pmc param_221 | |
.annotate 'line', 66 | |
.const 'Sub' $P233 = "20_1307988395.99251" | |
capture_lex $P233 | |
.annotate 'line', 67 | |
new $P215, "Undef" | |
set $P216, $P215 | |
.lex "$add_attr", $P216 | |
.annotate 'line', 68 | |
new $P217, "Undef" | |
set $P218, $P217 | |
.lex "$skip", $P218 | |
.annotate 'line', 69 | |
$P219 = root_new ['parrot';'ResizablePMCArray'] | |
set $P220, $P219 | |
.lex "@cur_attrs", $P220 | |
.lex "$_", param_221 | |
.annotate 'line', 67 | |
find_lex $P222, "$_" | |
unless_null $P222, vivify_233 | |
new $P222, "Undef" | |
vivify_233: | |
store_lex "$add_attr", $P222 | |
.annotate 'line', 68 | |
new $P223, "Integer" | |
assign $P223, 0 | |
store_lex "$skip", $P223 | |
.annotate 'line', 69 | |
find_lex $P224, "$target" | |
unless_null $P224, vivify_234 | |
new $P224, "Undef" | |
vivify_234: | |
get_how $P225, $P224 | |
find_lex $P226, "$target" | |
unless_null $P226, vivify_235 | |
new $P226, "Undef" | |
vivify_235: | |
$P227 = $P225."attributes"($P226) | |
store_lex "@cur_attrs", $P227 | |
.annotate 'line', 70 | |
find_lex $P229, "@cur_attrs" | |
unless_null $P229, vivify_236 | |
$P229 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_236: | |
defined $I230, $P229 | |
unless $I230, for_undef_237 | |
iter $P228, $P229 | |
new $P254, 'ExceptionHandler' | |
set_label $P254, loop253_handler | |
$P254."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P254 | |
loop253_test: | |
unless $P228, loop253_done | |
shift $P231, $P228 | |
loop253_redo: | |
.const 'Sub' $P233 = "20_1307988395.99251" | |
capture_lex $P233 | |
$P233($P231) | |
loop253_next: | |
goto loop253_test | |
loop253_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P255, exception, 'type' | |
eq $P255, .CONTROL_LOOP_NEXT, loop253_next | |
eq $P255, .CONTROL_LOOP_REDO, loop253_redo | |
loop253_done: | |
pop_eh | |
for_undef_237: | |
.annotate 'line', 80 | |
find_lex $P258, "$skip" | |
unless_null $P258, vivify_243 | |
new $P258, "Undef" | |
vivify_243: | |
unless $P258, unless_257 | |
set $P256, $P258 | |
goto unless_257_end | |
unless_257: | |
.annotate 'line', 81 | |
find_lex $P259, "$target" | |
unless_null $P259, vivify_244 | |
new $P259, "Undef" | |
vivify_244: | |
get_how $P260, $P259 | |
find_lex $P261, "$target" | |
unless_null $P261, vivify_245 | |
new $P261, "Undef" | |
vivify_245: | |
find_lex $P262, "$add_attr" | |
unless_null $P262, vivify_246 | |
new $P262, "Undef" | |
vivify_246: | |
$P263 = $P260."add_attribute"($P261, $P262) | |
.annotate 'line', 80 | |
set $P256, $P263 | |
unless_257_end: | |
.annotate 'line', 66 | |
.return ($P256) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToRoleApplier"] | |
.sub "_block232" :anon :subid("20_1307988395.99251") :outer("19_1307988395.99251") | |
.param pmc param_234 | |
.annotate 'line', 70 | |
.lex "$_", param_234 | |
.annotate 'line', 71 | |
find_lex $P237, "$_" | |
unless_null $P237, vivify_238 | |
new $P237, "Undef" | |
vivify_238: | |
find_lex $P238, "$add_attr" | |
unless_null $P238, vivify_239 | |
new $P238, "Undef" | |
vivify_239: | |
issame $I239, $P237, $P238 | |
if $I239, if_236 | |
.annotate 'line', 75 | |
find_lex $P243, "$_" | |
unless_null $P243, vivify_240 | |
new $P243, "Undef" | |
vivify_240: | |
$S244 = $P243."name"() | |
find_lex $P245, "$add_attr" | |
unless_null $P245, vivify_241 | |
new $P245, "Undef" | |
vivify_241: | |
$S246 = $P245."name"() | |
iseq $I247, $S244, $S246 | |
if $I247, if_242 | |
new $P241, 'Integer' | |
set $P241, $I247 | |
goto if_242_end | |
if_242: | |
.annotate 'line', 76 | |
new $P248, "String" | |
assign $P248, "Attribute '" | |
find_lex $P249, "$_" | |
unless_null $P249, vivify_242 | |
new $P249, "Undef" | |
vivify_242: | |
$S250 = $P249."name"() | |
concat $P251, $P248, $S250 | |
concat $P252, $P251, "' conflicts in role composition" | |
die $P252 | |
if_242_end: | |
.annotate 'line', 74 | |
set $P235, $P241 | |
.annotate 'line', 71 | |
goto if_236_end | |
if_236: | |
.annotate 'line', 72 | |
new $P240, "Integer" | |
assign $P240, 1 | |
store_lex "$skip", $P240 | |
.annotate 'line', 71 | |
set $P235, $P240 | |
if_236_end: | |
.annotate 'line', 70 | |
.return ($P235) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "_block277" :subid("21_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 97 | |
.const 'Sub' $P538 = "41_1307988395.99251" | |
capture_lex $P538 | |
.const 'Sub' $P532 = "40_1307988395.99251" | |
capture_lex $P532 | |
.const 'Sub' $P507 = "38_1307988395.99251" | |
capture_lex $P507 | |
.const 'Sub' $P501 = "37_1307988395.99251" | |
capture_lex $P501 | |
.const 'Sub' $P495 = "36_1307988395.99251" | |
capture_lex $P495 | |
.const 'Sub' $P489 = "35_1307988395.99251" | |
capture_lex $P489 | |
.const 'Sub' $P464 = "33_1307988395.99251" | |
capture_lex $P464 | |
.const 'Sub' $P415 = "31_1307988395.99251" | |
capture_lex $P415 | |
.const 'Sub' $P402 = "30_1307988395.99251" | |
capture_lex $P402 | |
.const 'Sub' $P389 = "29_1307988395.99251" | |
capture_lex $P389 | |
.const 'Sub' $P385 = "28_1307988395.99251" | |
capture_lex $P385 | |
.const 'Sub' $P363 = "27_1307988395.99251" | |
capture_lex $P363 | |
.const 'Sub' $P341 = "26_1307988395.99251" | |
capture_lex $P341 | |
.const 'Sub' $P322 = "25_1307988395.99251" | |
capture_lex $P322 | |
.const 'Sub' $P305 = "24_1307988395.99251" | |
capture_lex $P305 | |
.const 'Sub' $P295 = "23_1307988395.99251" | |
capture_lex $P295 | |
.const 'Sub' $P283 = "22_1307988395.99251" | |
capture_lex $P283 | |
set $P280, $P279 | |
.lex "$?PACKAGE", $P280 | |
set $P282, $P281 | |
.lex "$?CLASS", $P282 | |
.annotate 'line', 236 | |
.const 'Sub' $P538 = "41_1307988395.99251" | |
newclosure $P544, $P538 | |
.annotate 'line', 97 | |
.return ($P544) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "new" :anon :subid("22_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_284 | |
.param pmc param_285 :named("name") | |
.param pmc param_286 :named("instance_of") | |
.annotate 'line', 129 | |
.lex "self", param_284 | |
.lex "$name", param_285 | |
.lex "$instance_of", param_286 | |
.annotate 'line', 130 | |
new $P287, "Undef" | |
set $P288, $P287 | |
.lex "$obj", $P288 | |
find_lex $P289, "self" | |
repr_instance_of $P290, $P289 | |
store_lex "$obj", $P290 | |
.annotate 'line', 131 | |
find_lex $P291, "$obj" | |
unless_null $P291, vivify_250 | |
new $P291, "Undef" | |
vivify_250: | |
find_lex $P292, "$name" | |
unless_null $P292, vivify_251 | |
new $P292, "Undef" | |
vivify_251: | |
find_lex $P293, "$instance_of" | |
unless_null $P293, vivify_252 | |
new $P293, "Undef" | |
vivify_252: | |
$P291."BUILD"($P292 :named("name"), $P293 :named("instance_of")) | |
find_lex $P294, "$obj" | |
unless_null $P294, vivify_253 | |
new $P294, "Undef" | |
vivify_253: | |
.annotate 'line', 129 | |
.return ($P294) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "BUILD" :anon :subid("23_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_296 | |
.param pmc param_297 :named("name") | |
.param pmc param_298 :named("instance_of") | |
.annotate 'line', 135 | |
.lex "self", param_296 | |
.lex "$name", param_297 | |
.lex "$instance_of", param_298 | |
.annotate 'line', 136 | |
find_lex $P299, "$name" | |
unless_null $P299, vivify_254 | |
new $P299, "Undef" | |
vivify_254: | |
find_lex $P300, "self" | |
find_lex $P301, "$?CLASS" | |
setattribute $P300, $P301, "$!name", $P299 | |
.annotate 'line', 137 | |
find_lex $P302, "$instance_of" | |
unless_null $P302, vivify_255 | |
new $P302, "Undef" | |
vivify_255: | |
find_lex $P303, "self" | |
find_lex $P304, "$?CLASS" | |
setattribute $P303, $P304, "$!instance_of", $P302 | |
.annotate 'line', 135 | |
.return ($P302) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "new_type" :anon :subid("24_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_306 | |
.param pmc param_311 :named("instance_of") | |
.param pmc param_307 :optional :named("name") | |
.param int has_param_307 :opt_flag | |
.param pmc param_309 :optional :named("repr") | |
.param int has_param_309 :opt_flag | |
.annotate 'line', 142 | |
.lex "self", param_306 | |
if has_param_307, optparam_256 | |
new $P308, "String" | |
assign $P308, "<anon>" | |
set param_307, $P308 | |
optparam_256: | |
.lex "$name", param_307 | |
if has_param_309, optparam_257 | |
new $P310, "String" | |
assign $P310, "P6opaque" | |
set param_309, $P310 | |
optparam_257: | |
.lex "$repr", param_309 | |
.lex "$instance_of", param_311 | |
.annotate 'line', 143 | |
new $P312, "Undef" | |
set $P313, $P312 | |
.lex "$metarole", $P313 | |
find_lex $P314, "self" | |
find_lex $P315, "$name" | |
unless_null $P315, vivify_258 | |
new $P315, "Undef" | |
vivify_258: | |
find_lex $P316, "$instance_of" | |
unless_null $P316, vivify_259 | |
new $P316, "Undef" | |
vivify_259: | |
$P317 = $P314."new"($P315 :named("name"), $P316 :named("instance_of")) | |
store_lex "$metarole", $P317 | |
.annotate 'line', 144 | |
find_lex $P318, "$metarole" | |
unless_null $P318, vivify_260 | |
new $P318, "Undef" | |
vivify_260: | |
find_lex $P319, "$repr" | |
unless_null $P319, vivify_261 | |
new $P319, "Undef" | |
vivify_261: | |
set $S320, $P319 | |
repr_type_object_for $P321, $P318, $S320 | |
.annotate 'line', 142 | |
.return ($P321) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "add_method" :anon :subid("25_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_323 | |
.param pmc param_324 | |
.param pmc param_325 | |
.param pmc param_326 | |
.annotate 'line', 147 | |
.lex "self", param_323 | |
.lex "$obj", param_324 | |
.lex "$name", param_325 | |
.lex "$code_obj", param_326 | |
.annotate 'line', 148 | |
find_lex $P328, "$name" | |
unless_null $P328, vivify_262 | |
new $P328, "Undef" | |
vivify_262: | |
find_lex $P329, "self" | |
find_lex $P330, "$?CLASS" | |
getattribute $P331, $P329, $P330, "%!methods" | |
unless_null $P331, vivify_263 | |
$P331 = root_new ['parrot';'Hash'] | |
vivify_263: | |
set $P332, $P331[$P328] | |
unless_null $P332, vivify_264 | |
new $P332, "Undef" | |
vivify_264: | |
unless $P332, if_327_end | |
.annotate 'line', 149 | |
new $P333, "String" | |
assign $P333, "This role already has a method named " | |
find_lex $P334, "$name" | |
unless_null $P334, vivify_265 | |
new $P334, "Undef" | |
vivify_265: | |
concat $P335, $P333, $P334 | |
die $P335 | |
if_327_end: | |
.annotate 'line', 151 | |
find_lex $P336, "$code_obj" | |
unless_null $P336, vivify_266 | |
new $P336, "Undef" | |
vivify_266: | |
find_lex $P337, "$name" | |
unless_null $P337, vivify_267 | |
new $P337, "Undef" | |
vivify_267: | |
find_lex $P338, "self" | |
find_lex $P339, "$?CLASS" | |
getattribute $P340, $P338, $P339, "%!methods" | |
unless_null $P340, vivify_268 | |
$P340 = root_new ['parrot';'Hash'] | |
setattribute $P338, $P339, "%!methods", $P340 | |
vivify_268: | |
set $P340[$P337], $P336 | |
.annotate 'line', 147 | |
.return ($P336) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "add_multi_method" :anon :subid("26_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_342 | |
.param pmc param_343 | |
.param pmc param_344 | |
.param pmc param_345 | |
.annotate 'line', 154 | |
.lex "self", param_342 | |
.lex "$obj", param_343 | |
.lex "$name", param_344 | |
.lex "$code_obj", param_345 | |
.annotate 'line', 155 | |
$P346 = root_new ['parrot';'Hash'] | |
set $P347, $P346 | |
.lex "%todo", $P347 | |
.annotate 'line', 154 | |
find_lex $P348, "%todo" | |
unless_null $P348, vivify_269 | |
$P348 = root_new ['parrot';'Hash'] | |
vivify_269: | |
.annotate 'line', 156 | |
find_lex $P349, "$name" | |
unless_null $P349, vivify_270 | |
new $P349, "Undef" | |
vivify_270: | |
find_lex $P350, "%todo" | |
unless_null $P350, vivify_271 | |
$P350 = root_new ['parrot';'Hash'] | |
store_lex "%todo", $P350 | |
vivify_271: | |
set $P350["name"], $P349 | |
.annotate 'line', 157 | |
find_lex $P351, "$code_obj" | |
unless_null $P351, vivify_272 | |
new $P351, "Undef" | |
vivify_272: | |
find_lex $P352, "%todo" | |
unless_null $P352, vivify_273 | |
$P352 = root_new ['parrot';'Hash'] | |
store_lex "%todo", $P352 | |
vivify_273: | |
set $P352["code"], $P351 | |
.annotate 'line', 158 | |
find_lex $P353, "%todo" | |
unless_null $P353, vivify_274 | |
$P353 = root_new ['parrot';'Hash'] | |
vivify_274: | |
find_lex $P354, "self" | |
find_lex $P355, "$?CLASS" | |
getattribute $P356, $P354, $P355, "@!multi_methods_to_incorporate" | |
unless_null $P356, vivify_275 | |
$P356 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_275: | |
set $N357, $P356 | |
set $I358, $N357 | |
find_lex $P359, "self" | |
find_lex $P360, "$?CLASS" | |
getattribute $P361, $P359, $P360, "@!multi_methods_to_incorporate" | |
unless_null $P361, vivify_276 | |
$P361 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P359, $P360, "@!multi_methods_to_incorporate", $P361 | |
vivify_276: | |
set $P361[$I358], $P353 | |
find_lex $P362, "$code_obj" | |
unless_null $P362, vivify_277 | |
new $P362, "Undef" | |
vivify_277: | |
.annotate 'line', 154 | |
.return ($P362) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "add_attribute" :anon :subid("27_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_364 | |
.param pmc param_365 | |
.param pmc param_366 | |
.annotate 'line', 162 | |
.lex "self", param_364 | |
.lex "$obj", param_365 | |
.lex "$meta_attr", param_366 | |
.annotate 'line', 163 | |
new $P367, "Undef" | |
set $P368, $P367 | |
.lex "$name", $P368 | |
find_lex $P369, "$meta_attr" | |
unless_null $P369, vivify_278 | |
new $P369, "Undef" | |
vivify_278: | |
$P370 = $P369."name"() | |
store_lex "$name", $P370 | |
.annotate 'line', 164 | |
find_lex $P372, "$name" | |
unless_null $P372, vivify_279 | |
new $P372, "Undef" | |
vivify_279: | |
find_lex $P373, "self" | |
find_lex $P374, "$?CLASS" | |
getattribute $P375, $P373, $P374, "%!attributes" | |
unless_null $P375, vivify_280 | |
$P375 = root_new ['parrot';'Hash'] | |
vivify_280: | |
set $P376, $P375[$P372] | |
unless_null $P376, vivify_281 | |
new $P376, "Undef" | |
vivify_281: | |
unless $P376, if_371_end | |
.annotate 'line', 165 | |
new $P377, "String" | |
assign $P377, "This role already has an attribute named " | |
find_lex $P378, "$name" | |
unless_null $P378, vivify_282 | |
new $P378, "Undef" | |
vivify_282: | |
concat $P379, $P377, $P378 | |
die $P379 | |
if_371_end: | |
.annotate 'line', 167 | |
find_lex $P380, "$meta_attr" | |
unless_null $P380, vivify_283 | |
new $P380, "Undef" | |
vivify_283: | |
find_lex $P381, "$name" | |
unless_null $P381, vivify_284 | |
new $P381, "Undef" | |
vivify_284: | |
find_lex $P382, "self" | |
find_lex $P383, "$?CLASS" | |
getattribute $P384, $P382, $P383, "%!attributes" | |
unless_null $P384, vivify_285 | |
$P384 = root_new ['parrot';'Hash'] | |
setattribute $P382, $P383, "%!attributes", $P384 | |
vivify_285: | |
set $P384[$P381], $P380 | |
.annotate 'line', 162 | |
.return ($P380) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "add_parent" :anon :subid("28_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_386 | |
.param pmc param_387 | |
.param pmc param_388 | |
.annotate 'line', 170 | |
.lex "self", param_386 | |
.lex "$obj", param_387 | |
.lex "$parent", param_388 | |
.annotate 'line', 171 | |
die "A role cannot inherit from a class in NQP" | |
.annotate 'line', 170 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "add_role" :anon :subid("29_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_390 | |
.param pmc param_391 | |
.param pmc param_392 | |
.annotate 'line', 174 | |
.lex "self", param_390 | |
.lex "$obj", param_391 | |
.lex "$role", param_392 | |
.annotate 'line', 175 | |
find_lex $P393, "$role" | |
unless_null $P393, vivify_286 | |
new $P393, "Undef" | |
vivify_286: | |
find_lex $P394, "self" | |
find_lex $P395, "$?CLASS" | |
getattribute $P396, $P394, $P395, "@!roles" | |
unless_null $P396, vivify_287 | |
$P396 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_287: | |
set $N397, $P396 | |
set $I398, $N397 | |
find_lex $P399, "self" | |
find_lex $P400, "$?CLASS" | |
getattribute $P401, $P399, $P400, "@!roles" | |
unless_null $P401, vivify_288 | |
$P401 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P399, $P400, "@!roles", $P401 | |
vivify_288: | |
set $P401[$I398], $P393 | |
.annotate 'line', 174 | |
.return ($P393) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "add_collision" :anon :subid("30_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_403 | |
.param pmc param_404 | |
.param pmc param_405 | |
.annotate 'line', 178 | |
.lex "self", param_403 | |
.lex "$obj", param_404 | |
.lex "$colliding_name", param_405 | |
.annotate 'line', 179 | |
find_lex $P406, "$colliding_name" | |
unless_null $P406, vivify_289 | |
new $P406, "Undef" | |
vivify_289: | |
find_lex $P407, "self" | |
find_lex $P408, "$?CLASS" | |
getattribute $P409, $P407, $P408, "@!collisions" | |
unless_null $P409, vivify_290 | |
$P409 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_290: | |
set $N410, $P409 | |
set $I411, $N410 | |
find_lex $P412, "self" | |
find_lex $P413, "$?CLASS" | |
getattribute $P414, $P412, $P413, "@!collisions" | |
unless_null $P414, vivify_291 | |
$P414 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P412, $P413, "@!collisions", $P414 | |
vivify_291: | |
set $P414[$I411], $P406 | |
.annotate 'line', 178 | |
.return ($P406) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.include "except_types.pasm" | |
.sub "compose" :anon :subid("31_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_416 | |
.param pmc param_417 | |
.annotate 'line', 183 | |
.const 'Sub' $P429 = "32_1307988395.99251" | |
capture_lex $P429 | |
.lex "self", param_416 | |
.lex "$obj", param_417 | |
.annotate 'line', 186 | |
find_lex $P419, "self" | |
find_lex $P420, "$?CLASS" | |
getattribute $P421, $P419, $P420, "@!roles" | |
unless_null $P421, vivify_292 | |
$P421 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_292: | |
unless $P421, if_418_end | |
.annotate 'line', 187 | |
find_lex $P423, "self" | |
find_lex $P424, "$?CLASS" | |
getattribute $P425, $P423, $P424, "@!roles" | |
unless_null $P425, vivify_293 | |
$P425 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_293: | |
defined $I426, $P425 | |
unless $I426, for_undef_294 | |
iter $P422, $P425 | |
new $P453, 'ExceptionHandler' | |
set_label $P453, loop452_handler | |
$P453."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P453 | |
loop452_test: | |
unless $P422, loop452_done | |
shift $P427, $P422 | |
loop452_redo: | |
.const 'Sub' $P429 = "32_1307988395.99251" | |
capture_lex $P429 | |
$P429($P427) | |
loop452_next: | |
goto loop452_test | |
loop452_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P454, exception, 'type' | |
eq $P454, .CONTROL_LOOP_NEXT, loop452_next | |
eq $P454, .CONTROL_LOOP_REDO, loop452_redo | |
loop452_done: | |
pop_eh | |
for_undef_294: | |
.annotate 'line', 191 | |
find_lex $P455, "RoleToRoleApplier" | |
find_lex $P456, "$obj" | |
unless_null $P456, vivify_302 | |
new $P456, "Undef" | |
vivify_302: | |
find_lex $P457, "self" | |
find_lex $P458, "$?CLASS" | |
getattribute $P459, $P457, $P458, "@!roles" | |
unless_null $P459, vivify_303 | |
$P459 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_303: | |
$P455."apply"($P456, $P459) | |
if_418_end: | |
.annotate 'line', 195 | |
new $P460, "Integer" | |
assign $P460, 1 | |
find_lex $P461, "self" | |
find_lex $P462, "$?CLASS" | |
setattribute $P461, $P462, "$!composed", $P460 | |
find_lex $P463, "$obj" | |
unless_null $P463, vivify_304 | |
new $P463, "Undef" | |
vivify_304: | |
.annotate 'line', 183 | |
.return ($P463) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "_block428" :anon :subid("32_1307988395.99251") :outer("31_1307988395.99251") | |
.param pmc param_430 | |
.annotate 'line', 187 | |
.lex "$_", param_430 | |
.annotate 'line', 188 | |
find_lex $P431, "$_" | |
unless_null $P431, vivify_295 | |
new $P431, "Undef" | |
vivify_295: | |
find_lex $P432, "self" | |
find_lex $P433, "$?CLASS" | |
getattribute $P434, $P432, $P433, "@!done" | |
unless_null $P434, vivify_296 | |
$P434 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_296: | |
set $N435, $P434 | |
set $I436, $N435 | |
find_lex $P437, "self" | |
find_lex $P438, "$?CLASS" | |
getattribute $P439, $P437, $P438, "@!done" | |
unless_null $P439, vivify_297 | |
$P439 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P437, $P438, "@!done", $P439 | |
vivify_297: | |
set $P439[$I436], $P431 | |
.annotate 'line', 189 | |
find_lex $P440, "$_" | |
unless_null $P440, vivify_298 | |
new $P440, "Undef" | |
vivify_298: | |
get_how $P441, $P440 | |
find_lex $P442, "$_" | |
unless_null $P442, vivify_299 | |
new $P442, "Undef" | |
vivify_299: | |
$P443 = $P441."instance_of"($P442) | |
find_lex $P444, "self" | |
find_lex $P445, "$?CLASS" | |
getattribute $P446, $P444, $P445, "@!done" | |
unless_null $P446, vivify_300 | |
$P446 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_300: | |
set $N447, $P446 | |
set $I448, $N447 | |
find_lex $P449, "self" | |
find_lex $P450, "$?CLASS" | |
getattribute $P451, $P449, $P450, "@!done" | |
unless_null $P451, vivify_301 | |
$P451 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P449, $P450, "@!done", $P451 | |
vivify_301: | |
set $P451[$I448], $P443 | |
.annotate 'line', 187 | |
.return ($P443) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.include "except_types.pasm" | |
.sub "methods" :anon :subid("33_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_465 | |
.param pmc param_466 | |
.param pmc param_467 :optional :named("local") | |
.param int has_param_467 :opt_flag | |
.annotate 'line', 204 | |
.const 'Sub' $P479 = "34_1307988395.99251" | |
capture_lex $P479 | |
.lex "self", param_465 | |
.lex "$obj", param_466 | |
if has_param_467, optparam_305 | |
new $P468, "Undef" | |
set param_467, $P468 | |
optparam_305: | |
.lex "$local", param_467 | |
.annotate 'line', 205 | |
$P469 = root_new ['parrot';'ResizablePMCArray'] | |
set $P470, $P469 | |
.lex "@meths", $P470 | |
.annotate 'line', 204 | |
find_lex $P471, "@meths" | |
unless_null $P471, vivify_306 | |
$P471 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_306: | |
.annotate 'line', 206 | |
find_lex $P473, "self" | |
find_lex $P474, "$?CLASS" | |
getattribute $P475, $P473, $P474, "%!methods" | |
unless_null $P475, vivify_307 | |
$P475 = root_new ['parrot';'Hash'] | |
vivify_307: | |
defined $I476, $P475 | |
unless $I476, for_undef_308 | |
iter $P472, $P475 | |
new $P486, 'ExceptionHandler' | |
set_label $P486, loop485_handler | |
$P486."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P486 | |
loop485_test: | |
unless $P472, loop485_done | |
shift $P477, $P472 | |
loop485_redo: | |
.const 'Sub' $P479 = "34_1307988395.99251" | |
capture_lex $P479 | |
$P479($P477) | |
loop485_next: | |
goto loop485_test | |
loop485_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P487, exception, 'type' | |
eq $P487, .CONTROL_LOOP_NEXT, loop485_next | |
eq $P487, .CONTROL_LOOP_REDO, loop485_redo | |
loop485_done: | |
pop_eh | |
for_undef_308: | |
find_lex $P488, "@meths" | |
unless_null $P488, vivify_311 | |
$P488 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_311: | |
.annotate 'line', 204 | |
.return ($P488) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "_block478" :anon :subid("34_1307988395.99251") :outer("33_1307988395.99251") | |
.param pmc param_480 | |
.annotate 'line', 206 | |
.lex "$_", param_480 | |
.annotate 'line', 207 | |
find_lex $P481, "@meths" | |
unless_null $P481, vivify_309 | |
$P481 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_309: | |
find_lex $P482, "$_" | |
unless_null $P482, vivify_310 | |
new $P482, "Undef" | |
vivify_310: | |
$P483 = $P482."value"() | |
$P484 = $P481."push"($P483) | |
.annotate 'line', 206 | |
.return ($P484) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "method_table" :anon :subid("35_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_490 | |
.param pmc param_491 | |
.annotate 'line', 212 | |
.lex "self", param_490 | |
.lex "$obj", param_491 | |
find_lex $P492, "self" | |
find_lex $P493, "$?CLASS" | |
getattribute $P494, $P492, $P493, "%!methods" | |
unless_null $P494, vivify_312 | |
$P494 = root_new ['parrot';'Hash'] | |
vivify_312: | |
.return ($P494) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "collisions" :anon :subid("36_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_496 | |
.param pmc param_497 | |
.annotate 'line', 216 | |
.lex "self", param_496 | |
.lex "$obj", param_497 | |
find_lex $P498, "self" | |
find_lex $P499, "$?CLASS" | |
getattribute $P500, $P498, $P499, "@!collisions" | |
unless_null $P500, vivify_313 | |
$P500 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_313: | |
.return ($P500) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "name" :anon :subid("37_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_502 | |
.param pmc param_503 | |
.annotate 'line', 220 | |
.lex "self", param_502 | |
.lex "$obj", param_503 | |
find_lex $P504, "self" | |
find_lex $P505, "$?CLASS" | |
getattribute $P506, $P504, $P505, "$!name" | |
unless_null $P506, vivify_314 | |
new $P506, "Undef" | |
vivify_314: | |
.return ($P506) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.include "except_types.pasm" | |
.sub "attributes" :anon :subid("38_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_508 | |
.param pmc param_509 | |
.param pmc param_510 :optional :named("local") | |
.param int has_param_510 :opt_flag | |
.annotate 'line', 224 | |
.const 'Sub' $P522 = "39_1307988395.99251" | |
capture_lex $P522 | |
.lex "self", param_508 | |
.lex "$obj", param_509 | |
if has_param_510, optparam_315 | |
new $P511, "Undef" | |
set param_510, $P511 | |
optparam_315: | |
.lex "$local", param_510 | |
.annotate 'line', 225 | |
$P512 = root_new ['parrot';'ResizablePMCArray'] | |
set $P513, $P512 | |
.lex "@attrs", $P513 | |
.annotate 'line', 224 | |
find_lex $P514, "@attrs" | |
unless_null $P514, vivify_316 | |
$P514 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_316: | |
.annotate 'line', 226 | |
find_lex $P516, "self" | |
find_lex $P517, "$?CLASS" | |
getattribute $P518, $P516, $P517, "%!attributes" | |
unless_null $P518, vivify_317 | |
$P518 = root_new ['parrot';'Hash'] | |
vivify_317: | |
defined $I519, $P518 | |
unless $I519, for_undef_318 | |
iter $P515, $P518 | |
new $P529, 'ExceptionHandler' | |
set_label $P529, loop528_handler | |
$P529."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P529 | |
loop528_test: | |
unless $P515, loop528_done | |
shift $P520, $P515 | |
loop528_redo: | |
.const 'Sub' $P522 = "39_1307988395.99251" | |
capture_lex $P522 | |
$P522($P520) | |
loop528_next: | |
goto loop528_test | |
loop528_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P530, exception, 'type' | |
eq $P530, .CONTROL_LOOP_NEXT, loop528_next | |
eq $P530, .CONTROL_LOOP_REDO, loop528_redo | |
loop528_done: | |
pop_eh | |
for_undef_318: | |
find_lex $P531, "@attrs" | |
unless_null $P531, vivify_321 | |
$P531 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_321: | |
.annotate 'line', 224 | |
.return ($P531) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "_block521" :anon :subid("39_1307988395.99251") :outer("38_1307988395.99251") | |
.param pmc param_523 | |
.annotate 'line', 226 | |
.lex "$_", param_523 | |
.annotate 'line', 227 | |
find_lex $P524, "@attrs" | |
unless_null $P524, vivify_319 | |
$P524 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_319: | |
find_lex $P525, "$_" | |
unless_null $P525, vivify_320 | |
new $P525, "Undef" | |
vivify_320: | |
$P526 = $P525."value"() | |
$P527 = $P524."push"($P526) | |
.annotate 'line', 226 | |
.return ($P527) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "roles" :anon :subid("40_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_533 | |
.param pmc param_534 | |
.annotate 'line', 232 | |
.lex "self", param_533 | |
.lex "$obj", param_534 | |
find_lex $P535, "self" | |
find_lex $P536, "$?CLASS" | |
getattribute $P537, $P535, $P536, "@!roles" | |
unless_null $P537, vivify_322 | |
$P537 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_322: | |
.return ($P537) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPConcreteRoleHOW"] | |
.sub "instance_of" :anon :subid("41_1307988395.99251") :outer("21_1307988395.99251") | |
.param pmc param_539 | |
.param pmc param_540 | |
.annotate 'line', 236 | |
.lex "self", param_539 | |
.lex "$obj", param_540 | |
find_lex $P541, "self" | |
find_lex $P542, "$?CLASS" | |
getattribute $P543, $P541, $P542, "$!instance_of" | |
unless_null $P543, vivify_323 | |
new $P543, "Undef" | |
vivify_323: | |
.return ($P543) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.sub "_block545" :subid("42_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 242 | |
.const 'Sub' $P625 = "47_1307988395.99251" | |
capture_lex $P625 | |
.const 'Sub' $P584 = "45_1307988395.99251" | |
capture_lex $P584 | |
.const 'Sub' $P547 = "43_1307988395.99251" | |
capture_lex $P547 | |
.annotate 'line', 244 | |
.const 'Sub' $P547 = "43_1307988395.99251" | |
newclosure $P582, $P547 | |
set $P583, $P582 | |
.lex "has_method", $P583 | |
.annotate 'line', 252 | |
.const 'Sub' $P584 = "45_1307988395.99251" | |
newclosure $P617, $P584 | |
set $P618, $P617 | |
.lex "has_attribute", $P618 | |
.annotate 'line', 242 | |
set $P620, $P619 | |
.lex "$?PACKAGE", $P620 | |
set $P622, $P621 | |
.lex "$?CLASS", $P622 | |
find_lex $P623, "has_method" | |
find_lex $P624, "has_attribute" | |
.annotate 'line', 260 | |
.const 'Sub' $P625 = "47_1307988395.99251" | |
newclosure $P769, $P625 | |
.annotate 'line', 242 | |
.return ($P769) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.include "except_types.pasm" | |
.sub "has_method" :subid("43_1307988395.99251") :outer("42_1307988395.99251") | |
.param pmc param_550 | |
.param pmc param_551 | |
.param pmc param_552 | |
.annotate 'line', 244 | |
.const 'Sub' $P565 = "44_1307988395.99251" | |
capture_lex $P565 | |
new $P549, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P549, control_548 | |
push_eh $P549 | |
.lex "$target", param_550 | |
.lex "$name", param_551 | |
.lex "$local", param_552 | |
.annotate 'line', 245 | |
$P553 = root_new ['parrot';'ResizablePMCArray'] | |
set $P554, $P553 | |
.lex "@methods", $P554 | |
find_lex $P555, "$target" | |
unless_null $P555, vivify_324 | |
new $P555, "Undef" | |
vivify_324: | |
get_how $P556, $P555 | |
find_lex $P557, "$target" | |
unless_null $P557, vivify_325 | |
new $P557, "Undef" | |
vivify_325: | |
find_lex $P558, "$local" | |
unless_null $P558, vivify_326 | |
new $P558, "Undef" | |
vivify_326: | |
$P559 = $P556."methods"($P557, $P558 :named("local")) | |
store_lex "@methods", $P559 | |
.annotate 'line', 246 | |
find_lex $P561, "@methods" | |
unless_null $P561, vivify_327 | |
$P561 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_327: | |
defined $I562, $P561 | |
unless $I562, for_undef_328 | |
iter $P560, $P561 | |
new $P577, 'ExceptionHandler' | |
set_label $P577, loop576_handler | |
$P577."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P577 | |
loop576_test: | |
unless $P560, loop576_done | |
shift $P563, $P560 | |
loop576_redo: | |
.const 'Sub' $P565 = "44_1307988395.99251" | |
capture_lex $P565 | |
$P565($P563) | |
loop576_next: | |
goto loop576_test | |
loop576_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P578, exception, 'type' | |
eq $P578, .CONTROL_LOOP_NEXT, loop576_next | |
eq $P578, .CONTROL_LOOP_REDO, loop576_redo | |
loop576_done: | |
pop_eh | |
for_undef_328: | |
.annotate 'line', 249 | |
new $P579, "Exception" | |
set $P579['type'], .CONTROL_RETURN | |
new $P580, "Integer" | |
assign $P580, 0 | |
setattribute $P579, 'payload', $P580 | |
throw $P579 | |
.annotate 'line', 244 | |
.return () | |
control_548: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P581, exception, "payload" | |
.return ($P581) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.include "except_types.pasm" | |
.sub "_block564" :anon :subid("44_1307988395.99251") :outer("43_1307988395.99251") | |
.param pmc param_566 | |
.annotate 'line', 246 | |
.lex "$_", param_566 | |
.annotate 'line', 247 | |
find_lex $P569, "$_" | |
unless_null $P569, vivify_329 | |
new $P569, "Undef" | |
vivify_329: | |
set $S570, $P569 | |
find_lex $P571, "$name" | |
unless_null $P571, vivify_330 | |
new $P571, "Undef" | |
vivify_330: | |
set $S572, $P571 | |
iseq $I573, $S570, $S572 | |
if $I573, if_568 | |
new $P567, 'Integer' | |
set $P567, $I573 | |
goto if_568_end | |
if_568: | |
new $P574, "Exception" | |
set $P574['type'], .CONTROL_RETURN | |
new $P575, "Integer" | |
assign $P575, 1 | |
setattribute $P574, 'payload', $P575 | |
throw $P574 | |
if_568_end: | |
.annotate 'line', 246 | |
.return ($P567) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.include "except_types.pasm" | |
.sub "has_attribute" :subid("45_1307988395.99251") :outer("42_1307988395.99251") | |
.param pmc param_587 | |
.param pmc param_588 | |
.annotate 'line', 252 | |
.const 'Sub' $P600 = "46_1307988395.99251" | |
capture_lex $P600 | |
new $P586, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P586, control_585 | |
push_eh $P586 | |
.lex "$target", param_587 | |
.lex "$name", param_588 | |
.annotate 'line', 253 | |
$P589 = root_new ['parrot';'ResizablePMCArray'] | |
set $P590, $P589 | |
.lex "@attributes", $P590 | |
find_lex $P591, "$target" | |
unless_null $P591, vivify_331 | |
new $P591, "Undef" | |
vivify_331: | |
get_how $P592, $P591 | |
find_lex $P593, "$target" | |
unless_null $P593, vivify_332 | |
new $P593, "Undef" | |
vivify_332: | |
$P594 = $P592."attributes"($P593, 1 :named("local")) | |
store_lex "@attributes", $P594 | |
.annotate 'line', 254 | |
find_lex $P596, "@attributes" | |
unless_null $P596, vivify_333 | |
$P596 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_333: | |
defined $I597, $P596 | |
unless $I597, for_undef_334 | |
iter $P595, $P596 | |
new $P612, 'ExceptionHandler' | |
set_label $P612, loop611_handler | |
$P612."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P612 | |
loop611_test: | |
unless $P595, loop611_done | |
shift $P598, $P595 | |
loop611_redo: | |
.const 'Sub' $P600 = "46_1307988395.99251" | |
capture_lex $P600 | |
$P600($P598) | |
loop611_next: | |
goto loop611_test | |
loop611_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P613, exception, 'type' | |
eq $P613, .CONTROL_LOOP_NEXT, loop611_next | |
eq $P613, .CONTROL_LOOP_REDO, loop611_redo | |
loop611_done: | |
pop_eh | |
for_undef_334: | |
.annotate 'line', 257 | |
new $P614, "Exception" | |
set $P614['type'], .CONTROL_RETURN | |
new $P615, "Integer" | |
assign $P615, 0 | |
setattribute $P614, 'payload', $P615 | |
throw $P614 | |
.annotate 'line', 252 | |
.return () | |
control_585: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P616, exception, "payload" | |
.return ($P616) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.include "except_types.pasm" | |
.sub "_block599" :anon :subid("46_1307988395.99251") :outer("45_1307988395.99251") | |
.param pmc param_601 | |
.annotate 'line', 254 | |
.lex "$_", param_601 | |
.annotate 'line', 255 | |
find_lex $P604, "$_" | |
unless_null $P604, vivify_335 | |
new $P604, "Undef" | |
vivify_335: | |
$S605 = $P604."name"() | |
find_lex $P606, "$name" | |
unless_null $P606, vivify_336 | |
new $P606, "Undef" | |
vivify_336: | |
set $S607, $P606 | |
iseq $I608, $S605, $S607 | |
if $I608, if_603 | |
new $P602, 'Integer' | |
set $P602, $I608 | |
goto if_603_end | |
if_603: | |
new $P609, "Exception" | |
set $P609['type'], .CONTROL_RETURN | |
new $P610, "Integer" | |
assign $P610, 1 | |
setattribute $P609, 'payload', $P610 | |
throw $P609 | |
if_603_end: | |
.annotate 'line', 254 | |
.return ($P602) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.include "except_types.pasm" | |
.sub "apply" :anon :subid("47_1307988395.99251") :outer("42_1307988395.99251") | |
.param pmc param_626 | |
.param pmc param_627 | |
.param pmc param_628 | |
.annotate 'line', 260 | |
.const 'Sub' $P740 = "51_1307988395.99251" | |
capture_lex $P740 | |
.const 'Sub' $P714 = "50_1307988395.99251" | |
capture_lex $P714 | |
.const 'Sub' $P685 = "49_1307988395.99251" | |
capture_lex $P685 | |
.const 'Sub' $P665 = "48_1307988395.99251" | |
capture_lex $P665 | |
.lex "self", param_626 | |
.lex "$target", param_627 | |
.lex "@roles", param_628 | |
.annotate 'line', 263 | |
new $P629, "Undef" | |
set $P630, $P629 | |
.lex "$to_compose", $P630 | |
.annotate 'line', 264 | |
new $P631, "Undef" | |
set $P632, $P631 | |
.lex "$to_compose_meta", $P632 | |
.annotate 'line', 279 | |
$P633 = root_new ['parrot';'ResizablePMCArray'] | |
set $P634, $P633 | |
.lex "@collisions", $P634 | |
.annotate 'line', 288 | |
$P635 = root_new ['parrot';'ResizablePMCArray'] | |
set $P636, $P635 | |
.lex "@methods", $P636 | |
.annotate 'line', 296 | |
$P637 = root_new ['parrot';'ResizablePMCArray'] | |
set $P638, $P637 | |
.lex "@attributes", $P638 | |
.annotate 'line', 308 | |
$P639 = root_new ['parrot';'ResizablePMCArray'] | |
set $P640, $P639 | |
.lex "@done", $P640 | |
.annotate 'line', 260 | |
find_lex $P641, "$to_compose" | |
unless_null $P641, vivify_337 | |
new $P641, "Undef" | |
vivify_337: | |
find_lex $P642, "$to_compose_meta" | |
unless_null $P642, vivify_338 | |
new $P642, "Undef" | |
vivify_338: | |
.annotate 'line', 265 | |
find_lex $P644, "@roles" | |
unless_null $P644, vivify_339 | |
$P644 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_339: | |
set $N645, $P644 | |
iseq $I646, $N645, 1.0 | |
if $I646, if_643 | |
.annotate 'line', 270 | |
find_lex $P651, "NQPConcreteRoleHOW" | |
find_lex $P652, "$?PACKAGE" | |
get_who $P653, $P652 | |
set $P656, $P653["NQPMu"] | |
unless_null $P656, vivify_340 | |
get_hll_global $P654, "GLOBAL" | |
get_who $P655, $P654 | |
set $P656, $P655["NQPMu"] | |
vivify_340: | |
$P657 = $P651."new_type"($P656 :named("instance_of")) | |
store_lex "$to_compose", $P657 | |
.annotate 'line', 271 | |
find_lex $P658, "$to_compose" | |
unless_null $P658, vivify_341 | |
new $P658, "Undef" | |
vivify_341: | |
get_how $P659, $P658 | |
store_lex "$to_compose_meta", $P659 | |
.annotate 'line', 272 | |
find_lex $P661, "@roles" | |
unless_null $P661, vivify_342 | |
$P661 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_342: | |
defined $I662, $P661 | |
unless $I662, for_undef_343 | |
iter $P660, $P661 | |
new $P672, 'ExceptionHandler' | |
set_label $P672, loop671_handler | |
$P672."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P672 | |
loop671_test: | |
unless $P660, loop671_done | |
shift $P663, $P660 | |
loop671_redo: | |
.const 'Sub' $P665 = "48_1307988395.99251" | |
capture_lex $P665 | |
$P665($P663) | |
loop671_next: | |
goto loop671_test | |
loop671_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P673, exception, 'type' | |
eq $P673, .CONTROL_LOOP_NEXT, loop671_next | |
eq $P673, .CONTROL_LOOP_REDO, loop671_redo | |
loop671_done: | |
pop_eh | |
for_undef_343: | |
.annotate 'line', 275 | |
find_lex $P674, "$to_compose_meta" | |
unless_null $P674, vivify_347 | |
new $P674, "Undef" | |
vivify_347: | |
find_lex $P675, "$to_compose" | |
unless_null $P675, vivify_348 | |
new $P675, "Undef" | |
vivify_348: | |
$P676 = $P674."compose"($P675) | |
store_lex "$to_compose", $P676 | |
.annotate 'line', 269 | |
goto if_643_end | |
if_643: | |
.annotate 'line', 266 | |
find_lex $P647, "@roles" | |
unless_null $P647, vivify_349 | |
$P647 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_349: | |
set $P648, $P647[0] | |
unless_null $P648, vivify_350 | |
new $P648, "Undef" | |
vivify_350: | |
store_lex "$to_compose", $P648 | |
.annotate 'line', 267 | |
find_lex $P649, "$to_compose" | |
unless_null $P649, vivify_351 | |
new $P649, "Undef" | |
vivify_351: | |
get_how $P650, $P649 | |
store_lex "$to_compose_meta", $P650 | |
if_643_end: | |
.annotate 'line', 279 | |
find_lex $P677, "$to_compose_meta" | |
unless_null $P677, vivify_352 | |
new $P677, "Undef" | |
vivify_352: | |
find_lex $P678, "$to_compose" | |
unless_null $P678, vivify_353 | |
new $P678, "Undef" | |
vivify_353: | |
$P679 = $P677."collisions"($P678) | |
store_lex "@collisions", $P679 | |
.annotate 'line', 280 | |
find_lex $P681, "@collisions" | |
unless_null $P681, vivify_354 | |
$P681 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_354: | |
defined $I682, $P681 | |
unless $I682, for_undef_355 | |
iter $P680, $P681 | |
new $P704, 'ExceptionHandler' | |
set_label $P704, loop703_handler | |
$P704."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P704 | |
loop703_test: | |
unless $P680, loop703_done | |
shift $P683, $P680 | |
loop703_redo: | |
.const 'Sub' $P685 = "49_1307988395.99251" | |
capture_lex $P685 | |
$P685($P683) | |
loop703_next: | |
goto loop703_test | |
loop703_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P705, exception, 'type' | |
eq $P705, .CONTROL_LOOP_NEXT, loop703_next | |
eq $P705, .CONTROL_LOOP_REDO, loop703_redo | |
loop703_done: | |
pop_eh | |
for_undef_355: | |
.annotate 'line', 288 | |
find_lex $P706, "$to_compose_meta" | |
unless_null $P706, vivify_361 | |
new $P706, "Undef" | |
vivify_361: | |
find_lex $P707, "$to_compose" | |
unless_null $P707, vivify_362 | |
new $P707, "Undef" | |
vivify_362: | |
$P708 = $P706."methods"($P707) | |
store_lex "@methods", $P708 | |
.annotate 'line', 289 | |
find_lex $P710, "@methods" | |
unless_null $P710, vivify_363 | |
$P710 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_363: | |
defined $I711, $P710 | |
unless $I711, for_undef_364 | |
iter $P709, $P710 | |
new $P730, 'ExceptionHandler' | |
set_label $P730, loop729_handler | |
$P730."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P730 | |
loop729_test: | |
unless $P709, loop729_done | |
shift $P712, $P709 | |
loop729_redo: | |
.const 'Sub' $P714 = "50_1307988395.99251" | |
capture_lex $P714 | |
$P714($P712) | |
loop729_next: | |
goto loop729_test | |
loop729_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P731, exception, 'type' | |
eq $P731, .CONTROL_LOOP_NEXT, loop729_next | |
eq $P731, .CONTROL_LOOP_REDO, loop729_redo | |
loop729_done: | |
pop_eh | |
for_undef_364: | |
.annotate 'line', 296 | |
find_lex $P732, "$to_compose_meta" | |
unless_null $P732, vivify_371 | |
new $P732, "Undef" | |
vivify_371: | |
find_lex $P733, "$to_compose" | |
unless_null $P733, vivify_372 | |
new $P733, "Undef" | |
vivify_372: | |
$P734 = $P732."attributes"($P733) | |
store_lex "@attributes", $P734 | |
.annotate 'line', 297 | |
find_lex $P736, "@attributes" | |
unless_null $P736, vivify_373 | |
$P736 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_373: | |
defined $I737, $P736 | |
unless $I737, for_undef_374 | |
iter $P735, $P736 | |
new $P764, 'ExceptionHandler' | |
set_label $P764, loop763_handler | |
$P764."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P764 | |
loop763_test: | |
unless $P735, loop763_done | |
shift $P738, $P735 | |
loop763_redo: | |
.const 'Sub' $P740 = "51_1307988395.99251" | |
capture_lex $P740 | |
$P740($P738) | |
loop763_next: | |
goto loop763_test | |
loop763_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P765, exception, 'type' | |
eq $P765, .CONTROL_LOOP_NEXT, loop763_next | |
eq $P765, .CONTROL_LOOP_REDO, loop763_redo | |
loop763_done: | |
pop_eh | |
for_undef_374: | |
find_lex $P766, "@done" | |
unless_null $P766, vivify_383 | |
$P766 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_383: | |
.annotate 'line', 309 | |
find_lex $P767, "$to_compose" | |
unless_null $P767, vivify_384 | |
new $P767, "Undef" | |
vivify_384: | |
find_lex $P768, "@done" | |
unless_null $P768, vivify_385 | |
$P768 = root_new ['parrot';'ResizablePMCArray'] | |
store_lex "@done", $P768 | |
vivify_385: | |
set $P768[0], $P767 | |
.annotate 'line', 260 | |
.return ($P767) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.sub "_block664" :anon :subid("48_1307988395.99251") :outer("47_1307988395.99251") | |
.param pmc param_666 | |
.annotate 'line', 272 | |
.lex "$_", param_666 | |
.annotate 'line', 273 | |
find_lex $P667, "$to_compose_meta" | |
unless_null $P667, vivify_344 | |
new $P667, "Undef" | |
vivify_344: | |
find_lex $P668, "$to_compose" | |
unless_null $P668, vivify_345 | |
new $P668, "Undef" | |
vivify_345: | |
find_lex $P669, "$_" | |
unless_null $P669, vivify_346 | |
new $P669, "Undef" | |
vivify_346: | |
$P670 = $P667."add_role"($P668, $P669) | |
.annotate 'line', 272 | |
.return ($P670) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.sub "_block684" :anon :subid("49_1307988395.99251") :outer("47_1307988395.99251") | |
.param pmc param_686 | |
.annotate 'line', 280 | |
.lex "$_", param_686 | |
.annotate 'line', 281 | |
find_lex $P689, "$target" | |
unless_null $P689, vivify_356 | |
new $P689, "Undef" | |
vivify_356: | |
find_lex $P690, "$_" | |
unless_null $P690, vivify_357 | |
new $P690, "Undef" | |
vivify_357: | |
set $S691, $P690 | |
$P692 = "has_method"($P689, $S691, 1) | |
unless $P692, unless_688 | |
set $P687, $P692 | |
goto unless_688_end | |
unless_688: | |
.annotate 'line', 282 | |
new $P693, 'String' | |
set $P693, "Method '" | |
find_lex $P694, "$_" | |
unless_null $P694, vivify_358 | |
new $P694, "Undef" | |
vivify_358: | |
concat $P695, $P693, $P694 | |
concat $P696, $P695, "' collides and a resolution must be provided by the class '" | |
.annotate 'line', 283 | |
find_lex $P697, "$target" | |
unless_null $P697, vivify_359 | |
new $P697, "Undef" | |
vivify_359: | |
get_how $P698, $P697 | |
find_lex $P699, "$target" | |
unless_null $P699, vivify_360 | |
new $P699, "Undef" | |
vivify_360: | |
$S700 = $P698."name"($P699) | |
concat $P701, $P696, $S700 | |
.annotate 'line', 282 | |
concat $P702, $P701, "'" | |
.annotate 'line', 283 | |
die $P702 | |
unless_688_end: | |
.annotate 'line', 280 | |
.return ($P687) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.sub "_block713" :anon :subid("50_1307988395.99251") :outer("47_1307988395.99251") | |
.param pmc param_715 | |
.annotate 'line', 289 | |
.lex "$_", param_715 | |
.annotate 'line', 290 | |
find_lex $P718, "$target" | |
unless_null $P718, vivify_365 | |
new $P718, "Undef" | |
vivify_365: | |
find_lex $P719, "$_" | |
unless_null $P719, vivify_366 | |
new $P719, "Undef" | |
vivify_366: | |
set $S720, $P719 | |
$P721 = "has_method"($P718, $S720, 0) | |
unless $P721, unless_717 | |
set $P716, $P721 | |
goto unless_717_end | |
unless_717: | |
.annotate 'line', 291 | |
find_lex $P722, "$target" | |
unless_null $P722, vivify_367 | |
new $P722, "Undef" | |
vivify_367: | |
get_how $P723, $P722 | |
find_lex $P724, "$target" | |
unless_null $P724, vivify_368 | |
new $P724, "Undef" | |
vivify_368: | |
find_lex $P725, "$_" | |
unless_null $P725, vivify_369 | |
new $P725, "Undef" | |
vivify_369: | |
set $S726, $P725 | |
find_lex $P727, "$_" | |
unless_null $P727, vivify_370 | |
new $P727, "Undef" | |
vivify_370: | |
$P728 = $P723."add_method"($P724, $S726, $P727) | |
.annotate 'line', 290 | |
set $P716, $P728 | |
unless_717_end: | |
.annotate 'line', 289 | |
.return ($P716) | |
.end | |
.HLL "nqp" | |
.namespace ["RoleToClassApplier"] | |
.sub "_block739" :anon :subid("51_1307988395.99251") :outer("47_1307988395.99251") | |
.param pmc param_741 | |
.annotate 'line', 297 | |
.lex "$_", param_741 | |
.annotate 'line', 298 | |
find_lex $P743, "$target" | |
unless_null $P743, vivify_375 | |
new $P743, "Undef" | |
vivify_375: | |
find_lex $P744, "$_" | |
unless_null $P744, vivify_376 | |
new $P744, "Undef" | |
vivify_376: | |
$P745 = $P744."name"() | |
$P746 = "has_attribute"($P743, $P745) | |
unless $P746, if_742_end | |
.annotate 'line', 299 | |
new $P747, "String" | |
assign $P747, "Attribute '" | |
find_lex $P748, "$_" | |
unless_null $P748, vivify_377 | |
new $P748, "Undef" | |
vivify_377: | |
$S749 = $P748."name"() | |
concat $P750, $P747, $S749 | |
concat $P751, $P750, "' already exists in the class '" | |
.annotate 'line', 300 | |
find_lex $P752, "$target" | |
unless_null $P752, vivify_378 | |
new $P752, "Undef" | |
vivify_378: | |
get_how $P753, $P752 | |
find_lex $P754, "$target" | |
unless_null $P754, vivify_379 | |
new $P754, "Undef" | |
vivify_379: | |
$S755 = $P753."name"($P754) | |
concat $P756, $P751, $S755 | |
.annotate 'line', 299 | |
concat $P757, $P756, "', but a role also wishes to compose it" | |
.annotate 'line', 300 | |
die $P757 | |
if_742_end: | |
.annotate 'line', 302 | |
find_lex $P758, "$target" | |
unless_null $P758, vivify_380 | |
new $P758, "Undef" | |
vivify_380: | |
get_how $P759, $P758 | |
find_lex $P760, "$target" | |
unless_null $P760, vivify_381 | |
new $P760, "Undef" | |
vivify_381: | |
find_lex $P761, "$_" | |
unless_null $P761, vivify_382 | |
new $P761, "Undef" | |
vivify_382: | |
$P762 = $P759."add_attribute"($P760, $P761) | |
.annotate 'line', 297 | |
.return ($P762) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block770" :subid("52_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 318 | |
.const 'Sub' $P1093 = "76_1307988395.99251" | |
capture_lex $P1093 | |
.const 'Sub' $P1068 = "74_1307988395.99251" | |
capture_lex $P1068 | |
.const 'Sub' $P1062 = "73_1307988395.99251" | |
capture_lex $P1062 | |
.const 'Sub' $P1056 = "72_1307988395.99251" | |
capture_lex $P1056 | |
.const 'Sub' $P1031 = "70_1307988395.99251" | |
capture_lex $P1031 | |
.const 'Sub' $P922 = "65_1307988395.99251" | |
capture_lex $P922 | |
.const 'Sub' $P919 = "64_1307988395.99251" | |
capture_lex $P919 | |
.const 'Sub' $P912 = "63_1307988395.99251" | |
capture_lex $P912 | |
.const 'Sub' $P899 = "62_1307988395.99251" | |
capture_lex $P899 | |
.const 'Sub' $P895 = "61_1307988395.99251" | |
capture_lex $P895 | |
.const 'Sub' $P873 = "60_1307988395.99251" | |
capture_lex $P873 | |
.const 'Sub' $P851 = "59_1307988395.99251" | |
capture_lex $P851 | |
.const 'Sub' $P832 = "58_1307988395.99251" | |
capture_lex $P832 | |
.const 'Sub' $P825 = "57_1307988395.99251" | |
capture_lex $P825 | |
.const 'Sub' $P809 = "56_1307988395.99251" | |
capture_lex $P809 | |
.const 'Sub' $P803 = "55_1307988395.99251" | |
capture_lex $P803 | |
.const 'Sub' $P793 = "54_1307988395.99251" | |
capture_lex $P793 | |
.const 'Sub' $P772 = "53_1307988395.99251" | |
capture_lex $P772 | |
.annotate 'line', 455 | |
.const 'Sub' $P772 = "53_1307988395.99251" | |
newclosure $P787, $P772 | |
set $P788, $P787 | |
.lex "reify_method", $P788 | |
.annotate 'line', 318 | |
set $P790, $P789 | |
.lex "$?PACKAGE", $P790 | |
set $P792, $P791 | |
.lex "$?CLASS", $P792 | |
.annotate 'line', 420 | |
find_lex $P1030, "reify_method" | |
.annotate 'line', 488 | |
.const 'Sub' $P1093 = "76_1307988395.99251" | |
newclosure $P1099, $P1093 | |
.annotate 'line', 318 | |
.return ($P1099) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "reify_method" :subid("53_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_773 | |
.annotate 'line', 455 | |
.lex "$meth", param_773 | |
.annotate 'line', 456 | |
new $P774, "Undef" | |
set $P775, $P774 | |
.lex "$callback", $P775 | |
find_lex $P776, "$meth" | |
unless_null $P776, vivify_386 | |
new $P776, "Undef" | |
vivify_386: | |
getprop $P777, "REIFY_CALLBACK", $P776 | |
store_lex "$callback", $P777 | |
.annotate 'line', 457 | |
find_lex $P780, "$callback" | |
unless_null $P780, vivify_387 | |
new $P780, "Undef" | |
vivify_387: | |
defined $I781, $P780 | |
if $I781, if_779 | |
find_lex $P785, "$meth" | |
unless_null $P785, vivify_388 | |
new $P785, "Undef" | |
vivify_388: | |
clone $P786, $P785 | |
set $P778, $P786 | |
goto if_779_end | |
if_779: | |
find_lex $P782, "$callback" | |
unless_null $P782, vivify_389 | |
new $P782, "Undef" | |
vivify_389: | |
find_lex $P783, "$meth" | |
unless_null $P783, vivify_390 | |
new $P783, "Undef" | |
vivify_390: | |
$P784 = $P782($P783) | |
set $P778, $P784 | |
if_779_end: | |
.annotate 'line', 455 | |
.return ($P778) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "new" :anon :subid("54_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_794 | |
.param pmc param_795 :named("name") | |
.annotate 'line', 348 | |
.lex "self", param_794 | |
.lex "$name", param_795 | |
.annotate 'line', 349 | |
new $P796, "Undef" | |
set $P797, $P796 | |
.lex "$obj", $P797 | |
find_lex $P798, "self" | |
repr_instance_of $P799, $P798 | |
store_lex "$obj", $P799 | |
.annotate 'line', 350 | |
find_lex $P800, "$obj" | |
unless_null $P800, vivify_391 | |
new $P800, "Undef" | |
vivify_391: | |
find_lex $P801, "$name" | |
unless_null $P801, vivify_392 | |
new $P801, "Undef" | |
vivify_392: | |
$P800."BUILD"($P801 :named("name")) | |
find_lex $P802, "$obj" | |
unless_null $P802, vivify_393 | |
new $P802, "Undef" | |
vivify_393: | |
.annotate 'line', 348 | |
.return ($P802) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "BUILD" :anon :subid("55_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_804 | |
.param pmc param_805 :named("name") | |
.annotate 'line', 354 | |
.lex "self", param_804 | |
.lex "$name", param_805 | |
.annotate 'line', 355 | |
find_lex $P806, "$name" | |
unless_null $P806, vivify_394 | |
new $P806, "Undef" | |
vivify_394: | |
find_lex $P807, "self" | |
find_lex $P808, "$?CLASS" | |
setattribute $P807, $P808, "$!name", $P806 | |
.annotate 'line', 354 | |
.return ($P806) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "new_type" :anon :subid("56_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_810 | |
.param pmc param_811 :optional :named("name") | |
.param int has_param_811 :opt_flag | |
.param pmc param_813 :optional :named("repr") | |
.param int has_param_813 :opt_flag | |
.annotate 'line', 360 | |
.lex "self", param_810 | |
if has_param_811, optparam_395 | |
new $P812, "String" | |
assign $P812, "<anon>" | |
set param_811, $P812 | |
optparam_395: | |
.lex "$name", param_811 | |
if has_param_813, optparam_396 | |
new $P814, "String" | |
assign $P814, "P6opaque" | |
set param_813, $P814 | |
optparam_396: | |
.lex "$repr", param_813 | |
.annotate 'line', 361 | |
new $P815, "Undef" | |
set $P816, $P815 | |
.lex "$metarole", $P816 | |
find_lex $P817, "self" | |
find_lex $P818, "$name" | |
unless_null $P818, vivify_397 | |
new $P818, "Undef" | |
vivify_397: | |
$P819 = $P817."new"($P818 :named("name")) | |
store_lex "$metarole", $P819 | |
.annotate 'line', 363 | |
find_lex $P820, "$metarole" | |
unless_null $P820, vivify_398 | |
new $P820, "Undef" | |
vivify_398: | |
find_lex $P821, "$repr" | |
unless_null $P821, vivify_399 | |
new $P821, "Undef" | |
vivify_399: | |
set $S822, $P821 | |
repr_type_object_for $P823, $P820, $S822 | |
$P824 = root_new ['parrot';'Hash'] | |
set_who $P823, $P824 | |
.annotate 'line', 360 | |
.return ($P823) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "set_body_block" :anon :subid("57_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_826 | |
.param pmc param_827 | |
.param pmc param_828 | |
.annotate 'line', 367 | |
.lex "self", param_826 | |
.lex "$obj", param_827 | |
.lex "$body_block", param_828 | |
.annotate 'line', 368 | |
find_lex $P829, "$body_block" | |
unless_null $P829, vivify_400 | |
new $P829, "Undef" | |
vivify_400: | |
find_lex $P830, "self" | |
find_lex $P831, "$?CLASS" | |
setattribute $P830, $P831, "$!body_block", $P829 | |
.annotate 'line', 367 | |
.return ($P829) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "add_method" :anon :subid("58_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_833 | |
.param pmc param_834 | |
.param pmc param_835 | |
.param pmc param_836 | |
.annotate 'line', 371 | |
.lex "self", param_833 | |
.lex "$obj", param_834 | |
.lex "$name", param_835 | |
.lex "$code_obj", param_836 | |
.annotate 'line', 372 | |
find_lex $P838, "$name" | |
unless_null $P838, vivify_401 | |
new $P838, "Undef" | |
vivify_401: | |
find_lex $P839, "self" | |
find_lex $P840, "$?CLASS" | |
getattribute $P841, $P839, $P840, "%!methods" | |
unless_null $P841, vivify_402 | |
$P841 = root_new ['parrot';'Hash'] | |
vivify_402: | |
set $P842, $P841[$P838] | |
unless_null $P842, vivify_403 | |
new $P842, "Undef" | |
vivify_403: | |
unless $P842, if_837_end | |
.annotate 'line', 373 | |
new $P843, "String" | |
assign $P843, "This role already has a method named " | |
find_lex $P844, "$name" | |
unless_null $P844, vivify_404 | |
new $P844, "Undef" | |
vivify_404: | |
concat $P845, $P843, $P844 | |
die $P845 | |
if_837_end: | |
.annotate 'line', 375 | |
find_lex $P846, "$code_obj" | |
unless_null $P846, vivify_405 | |
new $P846, "Undef" | |
vivify_405: | |
find_lex $P847, "$name" | |
unless_null $P847, vivify_406 | |
new $P847, "Undef" | |
vivify_406: | |
find_lex $P848, "self" | |
find_lex $P849, "$?CLASS" | |
getattribute $P850, $P848, $P849, "%!methods" | |
unless_null $P850, vivify_407 | |
$P850 = root_new ['parrot';'Hash'] | |
setattribute $P848, $P849, "%!methods", $P850 | |
vivify_407: | |
set $P850[$P847], $P846 | |
.annotate 'line', 371 | |
.return ($P846) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "add_multi_method" :anon :subid("59_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_852 | |
.param pmc param_853 | |
.param pmc param_854 | |
.param pmc param_855 | |
.annotate 'line', 378 | |
.lex "self", param_852 | |
.lex "$obj", param_853 | |
.lex "$name", param_854 | |
.lex "$code_obj", param_855 | |
.annotate 'line', 379 | |
$P856 = root_new ['parrot';'Hash'] | |
set $P857, $P856 | |
.lex "%todo", $P857 | |
.annotate 'line', 378 | |
find_lex $P858, "%todo" | |
unless_null $P858, vivify_408 | |
$P858 = root_new ['parrot';'Hash'] | |
vivify_408: | |
.annotate 'line', 380 | |
find_lex $P859, "$name" | |
unless_null $P859, vivify_409 | |
new $P859, "Undef" | |
vivify_409: | |
find_lex $P860, "%todo" | |
unless_null $P860, vivify_410 | |
$P860 = root_new ['parrot';'Hash'] | |
store_lex "%todo", $P860 | |
vivify_410: | |
set $P860["name"], $P859 | |
.annotate 'line', 381 | |
find_lex $P861, "$code_obj" | |
unless_null $P861, vivify_411 | |
new $P861, "Undef" | |
vivify_411: | |
find_lex $P862, "%todo" | |
unless_null $P862, vivify_412 | |
$P862 = root_new ['parrot';'Hash'] | |
store_lex "%todo", $P862 | |
vivify_412: | |
set $P862["code"], $P861 | |
.annotate 'line', 382 | |
find_lex $P863, "%todo" | |
unless_null $P863, vivify_413 | |
$P863 = root_new ['parrot';'Hash'] | |
vivify_413: | |
find_lex $P864, "self" | |
find_lex $P865, "$?CLASS" | |
getattribute $P866, $P864, $P865, "@!multi_methods_to_incorporate" | |
unless_null $P866, vivify_414 | |
$P866 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_414: | |
set $N867, $P866 | |
set $I868, $N867 | |
find_lex $P869, "self" | |
find_lex $P870, "$?CLASS" | |
getattribute $P871, $P869, $P870, "@!multi_methods_to_incorporate" | |
unless_null $P871, vivify_415 | |
$P871 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P869, $P870, "@!multi_methods_to_incorporate", $P871 | |
vivify_415: | |
set $P871[$I868], $P863 | |
find_lex $P872, "$code_obj" | |
unless_null $P872, vivify_416 | |
new $P872, "Undef" | |
vivify_416: | |
.annotate 'line', 378 | |
.return ($P872) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "add_attribute" :anon :subid("60_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_874 | |
.param pmc param_875 | |
.param pmc param_876 | |
.annotate 'line', 386 | |
.lex "self", param_874 | |
.lex "$obj", param_875 | |
.lex "$meta_attr", param_876 | |
.annotate 'line', 387 | |
new $P877, "Undef" | |
set $P878, $P877 | |
.lex "$name", $P878 | |
find_lex $P879, "$meta_attr" | |
unless_null $P879, vivify_417 | |
new $P879, "Undef" | |
vivify_417: | |
$P880 = $P879."name"() | |
store_lex "$name", $P880 | |
.annotate 'line', 388 | |
find_lex $P882, "$name" | |
unless_null $P882, vivify_418 | |
new $P882, "Undef" | |
vivify_418: | |
find_lex $P883, "self" | |
find_lex $P884, "$?CLASS" | |
getattribute $P885, $P883, $P884, "%!attributes" | |
unless_null $P885, vivify_419 | |
$P885 = root_new ['parrot';'Hash'] | |
vivify_419: | |
set $P886, $P885[$P882] | |
unless_null $P886, vivify_420 | |
new $P886, "Undef" | |
vivify_420: | |
unless $P886, if_881_end | |
.annotate 'line', 389 | |
new $P887, "String" | |
assign $P887, "This role already has an attribute named " | |
find_lex $P888, "$name" | |
unless_null $P888, vivify_421 | |
new $P888, "Undef" | |
vivify_421: | |
concat $P889, $P887, $P888 | |
die $P889 | |
if_881_end: | |
.annotate 'line', 391 | |
find_lex $P890, "$meta_attr" | |
unless_null $P890, vivify_422 | |
new $P890, "Undef" | |
vivify_422: | |
find_lex $P891, "$name" | |
unless_null $P891, vivify_423 | |
new $P891, "Undef" | |
vivify_423: | |
find_lex $P892, "self" | |
find_lex $P893, "$?CLASS" | |
getattribute $P894, $P892, $P893, "%!attributes" | |
unless_null $P894, vivify_424 | |
$P894 = root_new ['parrot';'Hash'] | |
setattribute $P892, $P893, "%!attributes", $P894 | |
vivify_424: | |
set $P894[$P891], $P890 | |
.annotate 'line', 386 | |
.return ($P890) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "add_parent" :anon :subid("61_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_896 | |
.param pmc param_897 | |
.param pmc param_898 | |
.annotate 'line', 394 | |
.lex "self", param_896 | |
.lex "$obj", param_897 | |
.lex "$parent", param_898 | |
.annotate 'line', 395 | |
die "A role cannot inherit from a class" | |
.annotate 'line', 394 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "add_role" :anon :subid("62_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_900 | |
.param pmc param_901 | |
.param pmc param_902 | |
.annotate 'line', 398 | |
.lex "self", param_900 | |
.lex "$obj", param_901 | |
.lex "$role", param_902 | |
.annotate 'line', 399 | |
find_lex $P903, "$role" | |
unless_null $P903, vivify_425 | |
new $P903, "Undef" | |
vivify_425: | |
find_lex $P904, "self" | |
find_lex $P905, "$?CLASS" | |
getattribute $P906, $P904, $P905, "@!roles" | |
unless_null $P906, vivify_426 | |
$P906 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_426: | |
set $N907, $P906 | |
set $I908, $N907 | |
find_lex $P909, "self" | |
find_lex $P910, "$?CLASS" | |
getattribute $P911, $P909, $P910, "@!roles" | |
unless_null $P911, vivify_427 | |
$P911 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P909, $P910, "@!roles", $P911 | |
vivify_427: | |
set $P911[$I908], $P903 | |
.annotate 'line', 398 | |
.return ($P903) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "compose" :anon :subid("63_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_913 | |
.param pmc param_914 | |
.annotate 'line', 403 | |
.lex "self", param_913 | |
.lex "$obj", param_914 | |
.annotate 'line', 404 | |
new $P915, "Integer" | |
assign $P915, 1 | |
find_lex $P916, "self" | |
find_lex $P917, "$?CLASS" | |
setattribute $P916, $P917, "$!composed", $P915 | |
find_lex $P918, "$obj" | |
unless_null $P918, vivify_428 | |
new $P918, "Undef" | |
vivify_428: | |
.annotate 'line', 403 | |
.return ($P918) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "parametric" :anon :subid("64_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_920 | |
.param pmc param_921 | |
.annotate 'line', 414 | |
.lex "self", param_920 | |
.lex "$obj", param_921 | |
.return (1) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.include "except_types.pasm" | |
.sub "instantiate" :anon :subid("65_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_925 | |
.param pmc param_926 | |
.param pmc param_927 | |
.annotate 'line', 420 | |
.const 'Sub' $P1007 = "69_1307988395.99251" | |
capture_lex $P1007 | |
.const 'Sub' $P986 = "68_1307988395.99251" | |
capture_lex $P986 | |
.const 'Sub' $P965 = "67_1307988395.99251" | |
capture_lex $P965 | |
.const 'Sub' $P947 = "66_1307988395.99251" | |
capture_lex $P947 | |
new $P924, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P924, control_923 | |
push_eh $P924 | |
.lex "self", param_925 | |
.lex "$obj", param_926 | |
.lex "$class_arg", param_927 | |
.annotate 'line', 426 | |
new $P928, "Undef" | |
set $P929, $P928 | |
.lex "$irole", $P929 | |
.annotate 'line', 423 | |
find_lex $P930, "self" | |
find_lex $P931, "$?CLASS" | |
getattribute $P932, $P930, $P931, "$!body_block" | |
unless_null $P932, vivify_429 | |
new $P932, "Undef" | |
vivify_429: | |
find_lex $P933, "$class_arg" | |
unless_null $P933, vivify_430 | |
new $P933, "Undef" | |
vivify_430: | |
$P932($P933) | |
.annotate 'line', 426 | |
find_lex $P934, "NQPConcreteRoleHOW" | |
find_lex $P935, "self" | |
find_lex $P936, "$?CLASS" | |
getattribute $P937, $P935, $P936, "$!name" | |
unless_null $P937, vivify_431 | |
new $P937, "Undef" | |
vivify_431: | |
find_lex $P938, "$obj" | |
unless_null $P938, vivify_432 | |
new $P938, "Undef" | |
vivify_432: | |
$P939 = $P934."new_type"($P937 :named("name"), $P938 :named("instance_of")) | |
store_lex "$irole", $P939 | |
.annotate 'line', 430 | |
find_lex $P941, "self" | |
find_lex $P942, "$?CLASS" | |
getattribute $P943, $P941, $P942, "%!attributes" | |
unless_null $P943, vivify_433 | |
$P943 = root_new ['parrot';'Hash'] | |
vivify_433: | |
defined $I944, $P943 | |
unless $I944, for_undef_434 | |
iter $P940, $P943 | |
new $P956, 'ExceptionHandler' | |
set_label $P956, loop955_handler | |
$P956."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P956 | |
loop955_test: | |
unless $P940, loop955_done | |
shift $P945, $P940 | |
loop955_redo: | |
.const 'Sub' $P947 = "66_1307988395.99251" | |
capture_lex $P947 | |
$P947($P945) | |
loop955_next: | |
goto loop955_test | |
loop955_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P957, exception, 'type' | |
eq $P957, .CONTROL_LOOP_NEXT, loop955_next | |
eq $P957, .CONTROL_LOOP_REDO, loop955_redo | |
loop955_done: | |
pop_eh | |
for_undef_434: | |
.annotate 'line', 435 | |
find_lex $P959, "self" | |
find_lex $P960, "$?CLASS" | |
getattribute $P961, $P959, $P960, "%!methods" | |
unless_null $P961, vivify_438 | |
$P961 = root_new ['parrot';'Hash'] | |
vivify_438: | |
defined $I962, $P961 | |
unless $I962, for_undef_439 | |
iter $P958, $P961 | |
new $P977, 'ExceptionHandler' | |
set_label $P977, loop976_handler | |
$P977."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P977 | |
loop976_test: | |
unless $P958, loop976_done | |
shift $P963, $P958 | |
loop976_redo: | |
.const 'Sub' $P965 = "67_1307988395.99251" | |
capture_lex $P965 | |
$P965($P963) | |
loop976_next: | |
goto loop976_test | |
loop976_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P978, exception, 'type' | |
eq $P978, .CONTROL_LOOP_NEXT, loop976_next | |
eq $P978, .CONTROL_LOOP_REDO, loop976_redo | |
loop976_done: | |
pop_eh | |
for_undef_439: | |
.annotate 'line', 438 | |
find_lex $P980, "self" | |
find_lex $P981, "$?CLASS" | |
getattribute $P982, $P980, $P981, "@!multi_methods_to_incorporate" | |
unless_null $P982, vivify_444 | |
$P982 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_444: | |
defined $I983, $P982 | |
unless $I983, for_undef_445 | |
iter $P979, $P982 | |
new $P998, 'ExceptionHandler' | |
set_label $P998, loop997_handler | |
$P998."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P998 | |
loop997_test: | |
unless $P979, loop997_done | |
shift $P984, $P979 | |
loop997_redo: | |
.const 'Sub' $P986 = "68_1307988395.99251" | |
capture_lex $P986 | |
$P986($P984) | |
loop997_next: | |
goto loop997_test | |
loop997_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P999, exception, 'type' | |
eq $P999, .CONTROL_LOOP_NEXT, loop997_next | |
eq $P999, .CONTROL_LOOP_REDO, loop997_redo | |
loop997_done: | |
pop_eh | |
for_undef_445: | |
.annotate 'line', 443 | |
find_lex $P1001, "self" | |
find_lex $P1002, "$?CLASS" | |
getattribute $P1003, $P1001, $P1002, "@!roles" | |
unless_null $P1003, vivify_452 | |
$P1003 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_452: | |
defined $I1004, $P1003 | |
unless $I1004, for_undef_453 | |
iter $P1000, $P1003 | |
new $P1022, 'ExceptionHandler' | |
set_label $P1022, loop1021_handler | |
$P1022."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1022 | |
loop1021_test: | |
unless $P1000, loop1021_done | |
shift $P1005, $P1000 | |
loop1021_redo: | |
.const 'Sub' $P1007 = "69_1307988395.99251" | |
capture_lex $P1007 | |
$P1007($P1005) | |
loop1021_next: | |
goto loop1021_test | |
loop1021_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1023, exception, 'type' | |
eq $P1023, .CONTROL_LOOP_NEXT, loop1021_next | |
eq $P1023, .CONTROL_LOOP_REDO, loop1021_redo | |
loop1021_done: | |
pop_eh | |
for_undef_453: | |
.annotate 'line', 449 | |
find_lex $P1024, "$irole" | |
unless_null $P1024, vivify_460 | |
new $P1024, "Undef" | |
vivify_460: | |
get_how $P1025, $P1024 | |
find_lex $P1026, "$irole" | |
unless_null $P1026, vivify_461 | |
new $P1026, "Undef" | |
vivify_461: | |
$P1025."compose"($P1026) | |
.annotate 'line', 450 | |
new $P1027, "Exception" | |
set $P1027['type'], .CONTROL_RETURN | |
find_lex $P1028, "$irole" | |
unless_null $P1028, vivify_462 | |
new $P1028, "Undef" | |
vivify_462: | |
setattribute $P1027, 'payload', $P1028 | |
throw $P1027 | |
.annotate 'line', 420 | |
.return () | |
control_923: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1029, exception, "payload" | |
.return ($P1029) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block946" :anon :subid("66_1307988395.99251") :outer("65_1307988395.99251") | |
.param pmc param_948 | |
.annotate 'line', 430 | |
.lex "$_", param_948 | |
.annotate 'line', 431 | |
find_lex $P949, "$irole" | |
unless_null $P949, vivify_435 | |
new $P949, "Undef" | |
vivify_435: | |
get_how $P950, $P949 | |
find_lex $P951, "$irole" | |
unless_null $P951, vivify_436 | |
new $P951, "Undef" | |
vivify_436: | |
find_lex $P952, "$_" | |
unless_null $P952, vivify_437 | |
new $P952, "Undef" | |
vivify_437: | |
$P953 = $P952."value"() | |
$P954 = $P950."add_attribute"($P951, $P953) | |
.annotate 'line', 430 | |
.return ($P954) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block964" :anon :subid("67_1307988395.99251") :outer("65_1307988395.99251") | |
.param pmc param_966 | |
.annotate 'line', 435 | |
.lex "$_", param_966 | |
.annotate 'line', 436 | |
find_lex $P967, "$irole" | |
unless_null $P967, vivify_440 | |
new $P967, "Undef" | |
vivify_440: | |
get_how $P968, $P967 | |
find_lex $P969, "$irole" | |
unless_null $P969, vivify_441 | |
new $P969, "Undef" | |
vivify_441: | |
find_lex $P970, "$_" | |
unless_null $P970, vivify_442 | |
new $P970, "Undef" | |
vivify_442: | |
$P971 = $P970."key"() | |
find_lex $P972, "$_" | |
unless_null $P972, vivify_443 | |
new $P972, "Undef" | |
vivify_443: | |
$P973 = $P972."value"() | |
$P974 = "reify_method"($P973) | |
$P975 = $P968."add_method"($P969, $P971, $P974) | |
.annotate 'line', 435 | |
.return ($P975) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block985" :anon :subid("68_1307988395.99251") :outer("65_1307988395.99251") | |
.param pmc param_987 | |
.annotate 'line', 438 | |
.lex "$_", param_987 | |
.annotate 'line', 439 | |
find_lex $P988, "$irole" | |
unless_null $P988, vivify_446 | |
new $P988, "Undef" | |
vivify_446: | |
get_how $P989, $P988 | |
find_lex $P990, "$irole" | |
unless_null $P990, vivify_447 | |
new $P990, "Undef" | |
vivify_447: | |
find_lex $P991, "$_" | |
unless_null $P991, vivify_448 | |
$P991 = root_new ['parrot';'Hash'] | |
vivify_448: | |
set $P992, $P991["name"] | |
unless_null $P992, vivify_449 | |
new $P992, "Undef" | |
vivify_449: | |
find_lex $P993, "$_" | |
unless_null $P993, vivify_450 | |
$P993 = root_new ['parrot';'Hash'] | |
vivify_450: | |
set $P994, $P993["code"] | |
unless_null $P994, vivify_451 | |
new $P994, "Undef" | |
vivify_451: | |
$P995 = "reify_method"($P994) | |
$P996 = $P989."add_multi_method"($P990, $P992, $P995) | |
.annotate 'line', 438 | |
.return ($P996) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block1006" :anon :subid("69_1307988395.99251") :outer("65_1307988395.99251") | |
.param pmc param_1010 | |
.annotate 'line', 444 | |
new $P1008, "Undef" | |
set $P1009, $P1008 | |
.lex "$instantiated", $P1009 | |
.lex "$_", param_1010 | |
find_lex $P1011, "$irole" | |
unless_null $P1011, vivify_454 | |
new $P1011, "Undef" | |
vivify_454: | |
get_how $P1012, $P1011 | |
find_lex $P1013, "$irole" | |
unless_null $P1013, vivify_455 | |
new $P1013, "Undef" | |
vivify_455: | |
find_lex $P1014, "$class_arg" | |
unless_null $P1014, vivify_456 | |
new $P1014, "Undef" | |
vivify_456: | |
$P1015 = $P1012."instantiate"($P1013, $P1014) | |
store_lex "$instantiated", $P1015 | |
.annotate 'line', 445 | |
find_lex $P1016, "$irole" | |
unless_null $P1016, vivify_457 | |
new $P1016, "Undef" | |
vivify_457: | |
get_how $P1017, $P1016 | |
find_lex $P1018, "$irole" | |
unless_null $P1018, vivify_458 | |
new $P1018, "Undef" | |
vivify_458: | |
find_lex $P1019, "$instantiated" | |
unless_null $P1019, vivify_459 | |
new $P1019, "Undef" | |
vivify_459: | |
$P1020 = $P1017."add_role"($P1018, $P1019) | |
.annotate 'line', 443 | |
.return ($P1020) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.include "except_types.pasm" | |
.sub "methods" :anon :subid("70_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_1032 | |
.param pmc param_1033 | |
.param pmc param_1034 :optional :named("local") | |
.param int has_param_1034 :opt_flag | |
.annotate 'line', 464 | |
.const 'Sub' $P1046 = "71_1307988395.99251" | |
capture_lex $P1046 | |
.lex "self", param_1032 | |
.lex "$obj", param_1033 | |
if has_param_1034, optparam_463 | |
new $P1035, "Undef" | |
set param_1034, $P1035 | |
optparam_463: | |
.lex "$local", param_1034 | |
.annotate 'line', 465 | |
$P1036 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1037, $P1036 | |
.lex "@meths", $P1037 | |
.annotate 'line', 464 | |
find_lex $P1038, "@meths" | |
unless_null $P1038, vivify_464 | |
$P1038 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_464: | |
.annotate 'line', 466 | |
find_lex $P1040, "self" | |
find_lex $P1041, "$?CLASS" | |
getattribute $P1042, $P1040, $P1041, "%!methods" | |
unless_null $P1042, vivify_465 | |
$P1042 = root_new ['parrot';'Hash'] | |
vivify_465: | |
defined $I1043, $P1042 | |
unless $I1043, for_undef_466 | |
iter $P1039, $P1042 | |
new $P1053, 'ExceptionHandler' | |
set_label $P1053, loop1052_handler | |
$P1053."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1053 | |
loop1052_test: | |
unless $P1039, loop1052_done | |
shift $P1044, $P1039 | |
loop1052_redo: | |
.const 'Sub' $P1046 = "71_1307988395.99251" | |
capture_lex $P1046 | |
$P1046($P1044) | |
loop1052_next: | |
goto loop1052_test | |
loop1052_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1054, exception, 'type' | |
eq $P1054, .CONTROL_LOOP_NEXT, loop1052_next | |
eq $P1054, .CONTROL_LOOP_REDO, loop1052_redo | |
loop1052_done: | |
pop_eh | |
for_undef_466: | |
find_lex $P1055, "@meths" | |
unless_null $P1055, vivify_469 | |
$P1055 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_469: | |
.annotate 'line', 464 | |
.return ($P1055) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block1045" :anon :subid("71_1307988395.99251") :outer("70_1307988395.99251") | |
.param pmc param_1047 | |
.annotate 'line', 466 | |
.lex "$_", param_1047 | |
.annotate 'line', 467 | |
find_lex $P1048, "@meths" | |
unless_null $P1048, vivify_467 | |
$P1048 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_467: | |
find_lex $P1049, "$_" | |
unless_null $P1049, vivify_468 | |
new $P1049, "Undef" | |
vivify_468: | |
$P1050 = $P1049."value"() | |
$P1051 = $P1048."push"($P1050) | |
.annotate 'line', 466 | |
.return ($P1051) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "method_table" :anon :subid("72_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_1057 | |
.param pmc param_1058 | |
.annotate 'line', 472 | |
.lex "self", param_1057 | |
.lex "$obj", param_1058 | |
find_lex $P1059, "self" | |
find_lex $P1060, "$?CLASS" | |
getattribute $P1061, $P1059, $P1060, "%!methods" | |
unless_null $P1061, vivify_470 | |
$P1061 = root_new ['parrot';'Hash'] | |
vivify_470: | |
.return ($P1061) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "name" :anon :subid("73_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_1063 | |
.param pmc param_1064 | |
.annotate 'line', 476 | |
.lex "self", param_1063 | |
.lex "$obj", param_1064 | |
find_lex $P1065, "self" | |
find_lex $P1066, "$?CLASS" | |
getattribute $P1067, $P1065, $P1066, "$!name" | |
unless_null $P1067, vivify_471 | |
new $P1067, "Undef" | |
vivify_471: | |
.return ($P1067) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.include "except_types.pasm" | |
.sub "attributes" :anon :subid("74_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_1069 | |
.param pmc param_1070 | |
.param pmc param_1071 :optional :named("local") | |
.param int has_param_1071 :opt_flag | |
.annotate 'line', 480 | |
.const 'Sub' $P1083 = "75_1307988395.99251" | |
capture_lex $P1083 | |
.lex "self", param_1069 | |
.lex "$obj", param_1070 | |
if has_param_1071, optparam_472 | |
new $P1072, "Undef" | |
set param_1071, $P1072 | |
optparam_472: | |
.lex "$local", param_1071 | |
.annotate 'line', 481 | |
$P1073 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1074, $P1073 | |
.lex "@attrs", $P1074 | |
.annotate 'line', 480 | |
find_lex $P1075, "@attrs" | |
unless_null $P1075, vivify_473 | |
$P1075 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_473: | |
.annotate 'line', 482 | |
find_lex $P1077, "self" | |
find_lex $P1078, "$?CLASS" | |
getattribute $P1079, $P1077, $P1078, "%!attributes" | |
unless_null $P1079, vivify_474 | |
$P1079 = root_new ['parrot';'Hash'] | |
vivify_474: | |
defined $I1080, $P1079 | |
unless $I1080, for_undef_475 | |
iter $P1076, $P1079 | |
new $P1090, 'ExceptionHandler' | |
set_label $P1090, loop1089_handler | |
$P1090."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1090 | |
loop1089_test: | |
unless $P1076, loop1089_done | |
shift $P1081, $P1076 | |
loop1089_redo: | |
.const 'Sub' $P1083 = "75_1307988395.99251" | |
capture_lex $P1083 | |
$P1083($P1081) | |
loop1089_next: | |
goto loop1089_test | |
loop1089_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1091, exception, 'type' | |
eq $P1091, .CONTROL_LOOP_NEXT, loop1089_next | |
eq $P1091, .CONTROL_LOOP_REDO, loop1089_redo | |
loop1089_done: | |
pop_eh | |
for_undef_475: | |
find_lex $P1092, "@attrs" | |
unless_null $P1092, vivify_478 | |
$P1092 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_478: | |
.annotate 'line', 480 | |
.return ($P1092) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "_block1082" :anon :subid("75_1307988395.99251") :outer("74_1307988395.99251") | |
.param pmc param_1084 | |
.annotate 'line', 482 | |
.lex "$_", param_1084 | |
.annotate 'line', 483 | |
find_lex $P1085, "@attrs" | |
unless_null $P1085, vivify_476 | |
$P1085 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_476: | |
find_lex $P1086, "$_" | |
unless_null $P1086, vivify_477 | |
new $P1086, "Undef" | |
vivify_477: | |
$P1087 = $P1086."value"() | |
$P1088 = $P1085."push"($P1087) | |
.annotate 'line', 482 | |
.return ($P1088) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPParametricRoleHOW"] | |
.sub "roles" :anon :subid("76_1307988395.99251") :outer("52_1307988395.99251") | |
.param pmc param_1094 | |
.param pmc param_1095 | |
.annotate 'line', 488 | |
.lex "self", param_1094 | |
.lex "$obj", param_1095 | |
find_lex $P1096, "self" | |
find_lex $P1097, "$?CLASS" | |
getattribute $P1098, $P1096, $P1097, "@!roles" | |
unless_null $P1098, vivify_479 | |
$P1098 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_479: | |
.return ($P1098) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1100" :subid("77_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 498 | |
.const 'Sub' $P2213 = "136_1307988395.99251" | |
capture_lex $P2213 | |
.const 'Sub' $P2175 = "134_1307988395.99251" | |
capture_lex $P2175 | |
.const 'Sub' $P2140 = "133_1307988395.99251" | |
capture_lex $P2140 | |
.const 'Sub' $P2101 = "132_1307988395.99251" | |
capture_lex $P2101 | |
.const 'Sub' $P2094 = "131_1307988395.99251" | |
capture_lex $P2094 | |
.const 'Sub' $P2087 = "130_1307988395.99251" | |
capture_lex $P2087 | |
.const 'Sub' $P2063 = "128_1307988395.99251" | |
capture_lex $P2063 | |
.const 'Sub' $P2057 = "127_1307988395.99251" | |
capture_lex $P2057 | |
.const 'Sub' $P2051 = "126_1307988395.99251" | |
capture_lex $P2051 | |
.const 'Sub' $P2027 = "124_1307988395.99251" | |
capture_lex $P2027 | |
.const 'Sub' $P2020 = "123_1307988395.99251" | |
capture_lex $P2020 | |
.const 'Sub' $P2006 = "122_1307988395.99251" | |
capture_lex $P2006 | |
.const 'Sub' $P1955 = "119_1307988395.99251" | |
capture_lex $P1955 | |
.const 'Sub' $P1904 = "116_1307988395.99251" | |
capture_lex $P1904 | |
.const 'Sub' $P1857 = "113_1307988395.99251" | |
capture_lex $P1857 | |
.const 'Sub' $P1819 = "110_1307988395.99251" | |
capture_lex $P1819 | |
.const 'Sub' $P1665 = "105_1307988395.99251" | |
capture_lex $P1665 | |
.const 'Sub' $P1555 = "101_1307988395.99251" | |
capture_lex $P1555 | |
.const 'Sub' $P1527 = "100_1307988395.99251" | |
capture_lex $P1527 | |
.const 'Sub' $P1501 = "99_1307988395.99251" | |
capture_lex $P1501 | |
.const 'Sub' $P1467 = "97_1307988395.99251" | |
capture_lex $P1467 | |
.const 'Sub' $P1460 = "96_1307988395.99251" | |
capture_lex $P1460 | |
.const 'Sub' $P1412 = "94_1307988395.99251" | |
capture_lex $P1412 | |
.const 'Sub' $P1390 = "93_1307988395.99251" | |
capture_lex $P1390 | |
.const 'Sub' $P1368 = "92_1307988395.99251" | |
capture_lex $P1368 | |
.const 'Sub' $P1333 = "91_1307988395.99251" | |
capture_lex $P1333 | |
.const 'Sub' $P1317 = "90_1307988395.99251" | |
capture_lex $P1317 | |
.const 'Sub' $P1310 = "89_1307988395.99251" | |
capture_lex $P1310 | |
.const 'Sub' $P1299 = "88_1307988395.99251" | |
capture_lex $P1299 | |
.const 'Sub' $P1148 = "81_1307988395.99251" | |
capture_lex $P1148 | |
.const 'Sub' $P1102 = "78_1307988395.99251" | |
capture_lex $P1102 | |
.annotate 'line', 735 | |
.const 'Sub' $P1102 = "78_1307988395.99251" | |
newclosure $P1146, $P1102 | |
set $P1147, $P1146 | |
.lex "compute_c3_mro", $P1147 | |
.annotate 'line', 757 | |
.const 'Sub' $P1148 = "81_1307988395.99251" | |
newclosure $P1293, $P1148 | |
set $P1294, $P1293 | |
.lex "c3_merge", $P1294 | |
.annotate 'line', 498 | |
set $P1296, $P1295 | |
.lex "$?PACKAGE", $P1296 | |
set $P1298, $P1297 | |
.lex "$?CLASS", $P1298 | |
.annotate 'line', 676 | |
find_lex $P1817, "compute_c3_mro" | |
find_lex $P1818, "c3_merge" | |
.annotate 'line', 959 | |
.const 'Sub' $P2213 = "136_1307988395.99251" | |
newclosure $P2250, $P2213 | |
.annotate 'line', 498 | |
.return ($P2250) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "compute_c3_mro" :subid("78_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1105 | |
.annotate 'line', 735 | |
.const 'Sub' $P1119 = "79_1307988395.99251" | |
capture_lex $P1119 | |
new $P1104, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P1104, control_1103 | |
push_eh $P1104 | |
.lex "$class", param_1105 | |
.annotate 'line', 736 | |
$P1106 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1107, $P1106 | |
.lex "@immediate_parents", $P1107 | |
.annotate 'line', 739 | |
$P1108 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1109, $P1108 | |
.lex "@result", $P1109 | |
.annotate 'line', 736 | |
find_lex $P1110, "$class" | |
unless_null $P1110, vivify_480 | |
new $P1110, "Undef" | |
vivify_480: | |
get_how $P1111, $P1110 | |
find_lex $P1112, "$class" | |
unless_null $P1112, vivify_481 | |
new $P1112, "Undef" | |
vivify_481: | |
$P1113 = $P1111."parents"($P1112, 1 :named("local")) | |
store_lex "@immediate_parents", $P1113 | |
find_lex $P1114, "@result" | |
unless_null $P1114, vivify_482 | |
$P1114 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_482: | |
.annotate 'line', 740 | |
find_lex $P1116, "@immediate_parents" | |
unless_null $P1116, vivify_483 | |
$P1116 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_483: | |
set $N1117, $P1116 | |
unless $N1117, if_1115_end | |
.const 'Sub' $P1119 = "79_1307988395.99251" | |
capture_lex $P1119 | |
$P1119() | |
if_1115_end: | |
.annotate 'line', 752 | |
find_lex $P1141, "@result" | |
unless_null $P1141, vivify_492 | |
$P1141 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_492: | |
find_lex $P1142, "$class" | |
unless_null $P1142, vivify_493 | |
new $P1142, "Undef" | |
vivify_493: | |
$P1141."unshift"($P1142) | |
.annotate 'line', 753 | |
new $P1143, "Exception" | |
set $P1143['type'], .CONTROL_RETURN | |
find_lex $P1144, "@result" | |
unless_null $P1144, vivify_494 | |
$P1144 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_494: | |
setattribute $P1143, 'payload', $P1144 | |
throw $P1143 | |
.annotate 'line', 735 | |
.return () | |
control_1103: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1145, exception, "payload" | |
.return ($P1145) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1118" :anon :subid("79_1307988395.99251") :outer("78_1307988395.99251") | |
.annotate 'line', 740 | |
.const 'Sub' $P1128 = "80_1307988395.99251" | |
capture_lex $P1128 | |
.annotate 'line', 743 | |
$P1120 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1121, $P1120 | |
.lex "@merge_list", $P1121 | |
.annotate 'line', 740 | |
find_lex $P1122, "@merge_list" | |
unless_null $P1122, vivify_484 | |
$P1122 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_484: | |
.annotate 'line', 744 | |
find_lex $P1124, "@immediate_parents" | |
unless_null $P1124, vivify_485 | |
$P1124 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_485: | |
defined $I1125, $P1124 | |
unless $I1125, for_undef_486 | |
iter $P1123, $P1124 | |
new $P1135, 'ExceptionHandler' | |
set_label $P1135, loop1134_handler | |
$P1135."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1135 | |
loop1134_test: | |
unless $P1123, loop1134_done | |
shift $P1126, $P1123 | |
loop1134_redo: | |
.const 'Sub' $P1128 = "80_1307988395.99251" | |
capture_lex $P1128 | |
$P1128($P1126) | |
loop1134_next: | |
goto loop1134_test | |
loop1134_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1136, exception, 'type' | |
eq $P1136, .CONTROL_LOOP_NEXT, loop1134_next | |
eq $P1136, .CONTROL_LOOP_REDO, loop1134_redo | |
loop1134_done: | |
pop_eh | |
for_undef_486: | |
.annotate 'line', 747 | |
find_lex $P1137, "@merge_list" | |
unless_null $P1137, vivify_489 | |
$P1137 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_489: | |
find_lex $P1138, "@immediate_parents" | |
unless_null $P1138, vivify_490 | |
$P1138 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_490: | |
$P1137."push"($P1138) | |
.annotate 'line', 748 | |
find_lex $P1139, "@merge_list" | |
unless_null $P1139, vivify_491 | |
$P1139 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_491: | |
$P1140 = "c3_merge"($P1139) | |
store_lex "@result", $P1140 | |
.annotate 'line', 740 | |
.return ($P1140) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1127" :anon :subid("80_1307988395.99251") :outer("79_1307988395.99251") | |
.param pmc param_1129 | |
.annotate 'line', 744 | |
.lex "$_", param_1129 | |
.annotate 'line', 745 | |
find_lex $P1130, "@merge_list" | |
unless_null $P1130, vivify_487 | |
$P1130 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_487: | |
find_lex $P1131, "$_" | |
unless_null $P1131, vivify_488 | |
new $P1131, "Undef" | |
vivify_488: | |
$P1132 = "compute_c3_mro"($P1131) | |
$P1133 = $P1130."push"($P1132) | |
.annotate 'line', 744 | |
.return ($P1133) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "c3_merge" :subid("81_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1151 | |
.annotate 'line', 757 | |
.const 'Sub' $P1252 = "86_1307988395.99251" | |
capture_lex $P1252 | |
.const 'Sub' $P1171 = "82_1307988395.99251" | |
capture_lex $P1171 | |
new $P1150, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P1150, control_1149 | |
push_eh $P1150 | |
.lex "@merge_list", param_1151 | |
.annotate 'line', 758 | |
$P1152 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1153, $P1152 | |
.lex "@result", $P1153 | |
.annotate 'line', 759 | |
new $P1154, "Undef" | |
set $P1155, $P1154 | |
.lex "$accepted", $P1155 | |
.annotate 'line', 760 | |
new $P1156, "Undef" | |
set $P1157, $P1156 | |
.lex "$something_accepted", $P1157 | |
.annotate 'line', 761 | |
new $P1158, "Undef" | |
set $P1159, $P1158 | |
.lex "$cand_count", $P1159 | |
.annotate 'line', 804 | |
new $P1160, "Undef" | |
set $P1161, $P1160 | |
.lex "$i", $P1161 | |
.annotate 'line', 757 | |
find_lex $P1162, "@result" | |
unless_null $P1162, vivify_495 | |
$P1162 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_495: | |
find_lex $P1163, "$accepted" | |
unless_null $P1163, vivify_496 | |
new $P1163, "Undef" | |
vivify_496: | |
.annotate 'line', 760 | |
new $P1164, "Integer" | |
assign $P1164, 0 | |
store_lex "$something_accepted", $P1164 | |
.annotate 'line', 761 | |
new $P1165, "Integer" | |
assign $P1165, 0 | |
store_lex "$cand_count", $P1165 | |
.annotate 'line', 764 | |
find_lex $P1167, "@merge_list" | |
unless_null $P1167, vivify_497 | |
$P1167 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_497: | |
defined $I1168, $P1167 | |
unless $I1168, for_undef_498 | |
iter $P1166, $P1167 | |
new $P1235, 'ExceptionHandler' | |
set_label $P1235, loop1234_handler | |
$P1235."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1235 | |
loop1234_test: | |
unless $P1166, loop1234_done | |
shift $P1169, $P1166 | |
loop1234_redo: | |
.const 'Sub' $P1171 = "82_1307988395.99251" | |
capture_lex $P1171 | |
$P1171($P1169) | |
loop1234_next: | |
goto loop1234_test | |
loop1234_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1236, exception, 'type' | |
eq $P1236, .CONTROL_LOOP_NEXT, loop1234_next | |
eq $P1236, .CONTROL_LOOP_REDO, loop1234_redo | |
loop1234_done: | |
pop_eh | |
for_undef_498: | |
.annotate 'line', 794 | |
find_lex $P1238, "$cand_count" | |
unless_null $P1238, vivify_517 | |
new $P1238, "Undef" | |
vivify_517: | |
set $N1239, $P1238 | |
iseq $I1240, $N1239, 0.0 | |
unless $I1240, if_1237_end | |
.annotate 'line', 795 | |
new $P1241, "Exception" | |
set $P1241['type'], .CONTROL_RETURN | |
find_lex $P1242, "@result" | |
unless_null $P1242, vivify_518 | |
$P1242 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_518: | |
setattribute $P1241, 'payload', $P1242 | |
throw $P1241 | |
if_1237_end: | |
.annotate 'line', 799 | |
find_lex $P1244, "$something_accepted" | |
unless_null $P1244, vivify_519 | |
new $P1244, "Undef" | |
vivify_519: | |
if $P1244, unless_1243_end | |
.annotate 'line', 800 | |
die "Could not build C3 linearization: ambiguous hierarchy" | |
unless_1243_end: | |
.annotate 'line', 804 | |
new $P1245, "Integer" | |
assign $P1245, 0 | |
store_lex "$i", $P1245 | |
.annotate 'line', 805 | |
new $P1284, 'ExceptionHandler' | |
set_label $P1284, loop1283_handler | |
$P1284."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1284 | |
loop1283_test: | |
find_lex $P1246, "$i" | |
unless_null $P1246, vivify_520 | |
new $P1246, "Undef" | |
vivify_520: | |
set $N1247, $P1246 | |
find_lex $P1248, "@merge_list" | |
unless_null $P1248, vivify_521 | |
$P1248 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_521: | |
set $N1249, $P1248 | |
islt $I1250, $N1247, $N1249 | |
unless $I1250, loop1283_done | |
loop1283_redo: | |
.const 'Sub' $P1252 = "86_1307988395.99251" | |
capture_lex $P1252 | |
$P1252() | |
loop1283_next: | |
goto loop1283_test | |
loop1283_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1285, exception, 'type' | |
eq $P1285, .CONTROL_LOOP_NEXT, loop1283_next | |
eq $P1285, .CONTROL_LOOP_REDO, loop1283_redo | |
loop1283_done: | |
pop_eh | |
.annotate 'line', 818 | |
find_lex $P1286, "@merge_list" | |
unless_null $P1286, vivify_535 | |
$P1286 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_535: | |
$P1287 = "c3_merge"($P1286) | |
store_lex "@result", $P1287 | |
.annotate 'line', 819 | |
find_lex $P1288, "@result" | |
unless_null $P1288, vivify_536 | |
$P1288 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_536: | |
find_lex $P1289, "$accepted" | |
unless_null $P1289, vivify_537 | |
new $P1289, "Undef" | |
vivify_537: | |
$P1288."unshift"($P1289) | |
.annotate 'line', 820 | |
new $P1290, "Exception" | |
set $P1290['type'], .CONTROL_RETURN | |
find_lex $P1291, "@result" | |
unless_null $P1291, vivify_538 | |
$P1291 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_538: | |
setattribute $P1290, 'payload', $P1291 | |
throw $P1290 | |
.annotate 'line', 757 | |
.return () | |
control_1149: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1292, exception, "payload" | |
.return ($P1292) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1170" :anon :subid("82_1307988395.99251") :outer("81_1307988395.99251") | |
.param pmc param_1174 | |
.annotate 'line', 764 | |
.const 'Sub' $P1181 = "83_1307988395.99251" | |
capture_lex $P1181 | |
.annotate 'line', 765 | |
$P1172 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1173, $P1172 | |
.lex "@cand_list", $P1173 | |
.lex "$_", param_1174 | |
find_lex $P1175, "$_" | |
unless_null $P1175, vivify_499 | |
new $P1175, "Undef" | |
vivify_499: | |
store_lex "@cand_list", $P1175 | |
.annotate 'line', 766 | |
find_lex $P1178, "@cand_list" | |
unless_null $P1178, vivify_500 | |
$P1178 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_500: | |
set $N1179, $P1178 | |
if $N1179, if_1177 | |
new $P1176, 'Float' | |
set $P1176, $N1179 | |
goto if_1177_end | |
if_1177: | |
.const 'Sub' $P1181 = "83_1307988395.99251" | |
capture_lex $P1181 | |
$P1233 = $P1181() | |
set $P1176, $P1233 | |
if_1177_end: | |
.annotate 'line', 764 | |
.return ($P1176) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1180" :anon :subid("83_1307988395.99251") :outer("82_1307988395.99251") | |
.annotate 'line', 766 | |
.const 'Sub' $P1196 = "84_1307988395.99251" | |
capture_lex $P1196 | |
.annotate 'line', 767 | |
new $P1182, "Undef" | |
set $P1183, $P1182 | |
.lex "$rejected", $P1183 | |
.annotate 'line', 768 | |
new $P1184, "Undef" | |
set $P1185, $P1184 | |
.lex "$cand_class", $P1185 | |
.annotate 'line', 767 | |
new $P1186, "Integer" | |
assign $P1186, 0 | |
store_lex "$rejected", $P1186 | |
.annotate 'line', 768 | |
find_lex $P1187, "@cand_list" | |
unless_null $P1187, vivify_501 | |
$P1187 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_501: | |
set $P1188, $P1187[0] | |
unless_null $P1188, vivify_502 | |
new $P1188, "Undef" | |
vivify_502: | |
store_lex "$cand_class", $P1188 | |
.annotate 'line', 769 | |
find_lex $P1189, "$cand_count" | |
unless_null $P1189, vivify_503 | |
new $P1189, "Undef" | |
vivify_503: | |
add $P1190, $P1189, 1 | |
store_lex "$cand_count", $P1190 | |
.annotate 'line', 770 | |
find_lex $P1192, "@merge_list" | |
unless_null $P1192, vivify_504 | |
$P1192 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_504: | |
defined $I1193, $P1192 | |
unless $I1193, for_undef_505 | |
iter $P1191, $P1192 | |
new $P1231, 'ExceptionHandler' | |
set_label $P1231, loop1230_handler | |
$P1231."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1231 | |
loop1230_test: | |
unless $P1191, loop1230_done | |
shift $P1194, $P1191 | |
loop1230_redo: | |
.const 'Sub' $P1196 = "84_1307988395.99251" | |
capture_lex $P1196 | |
$P1196($P1194) | |
loop1230_next: | |
goto loop1230_test | |
loop1230_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1232, exception, 'type' | |
eq $P1232, .CONTROL_LOOP_NEXT, loop1230_next | |
eq $P1232, .CONTROL_LOOP_REDO, loop1230_redo | |
loop1230_done: | |
pop_eh | |
for_undef_505: | |
.annotate 'line', 766 | |
.return ($P1191) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1195" :anon :subid("84_1307988395.99251") :outer("83_1307988395.99251") | |
.param pmc param_1197 | |
.annotate 'line', 770 | |
.const 'Sub' $P1203 = "85_1307988395.99251" | |
capture_lex $P1203 | |
.lex "$_", param_1197 | |
.annotate 'line', 772 | |
find_lex $P1199, "$_" | |
unless_null $P1199, vivify_506 | |
new $P1199, "Undef" | |
vivify_506: | |
find_lex $P1200, "@cand_list" | |
unless_null $P1200, vivify_507 | |
$P1200 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_507: | |
issame $I1201, $P1199, $P1200 | |
if $I1201, unless_1198_end | |
.const 'Sub' $P1203 = "85_1307988395.99251" | |
capture_lex $P1203 | |
$P1203() | |
unless_1198_end: | |
.annotate 'line', 784 | |
find_lex $P1227, "$rejected" | |
unless_null $P1227, vivify_515 | |
new $P1227, "Undef" | |
vivify_515: | |
unless $P1227, unless_1226 | |
set $P1225, $P1227 | |
goto unless_1226_end | |
unless_1226: | |
.annotate 'line', 785 | |
find_lex $P1228, "$cand_class" | |
unless_null $P1228, vivify_516 | |
new $P1228, "Undef" | |
vivify_516: | |
store_lex "$accepted", $P1228 | |
.annotate 'line', 786 | |
new $P1229, "Integer" | |
assign $P1229, 1 | |
store_lex "$something_accepted", $P1229 | |
.annotate 'line', 787 | |
die 0, .CONTROL_LOOP_LAST | |
unless_1226_end: | |
.annotate 'line', 770 | |
.return ($P1225) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1202" :anon :subid("85_1307988395.99251") :outer("84_1307988395.99251") | |
.annotate 'line', 774 | |
new $P1204, "Undef" | |
set $P1205, $P1204 | |
.lex "$cur_pos", $P1205 | |
new $P1206, "Integer" | |
assign $P1206, 1 | |
store_lex "$cur_pos", $P1206 | |
.annotate 'line', 775 | |
new $P1223, 'ExceptionHandler' | |
set_label $P1223, loop1222_handler | |
$P1223."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1223 | |
loop1222_test: | |
find_lex $P1207, "$cur_pos" | |
unless_null $P1207, vivify_508 | |
new $P1207, "Undef" | |
vivify_508: | |
set $N1208, $P1207 | |
find_lex $P1209, "$_" | |
unless_null $P1209, vivify_509 | |
new $P1209, "Undef" | |
vivify_509: | |
set $N1210, $P1209 | |
isle $I1211, $N1208, $N1210 | |
unless $I1211, loop1222_done | |
loop1222_redo: | |
.annotate 'line', 776 | |
find_lex $P1213, "$cur_pos" | |
unless_null $P1213, vivify_510 | |
new $P1213, "Undef" | |
vivify_510: | |
set $I1214, $P1213 | |
find_lex $P1215, "$_" | |
unless_null $P1215, vivify_511 | |
$P1215 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_511: | |
set $P1216, $P1215[$I1214] | |
unless_null $P1216, vivify_512 | |
new $P1216, "Undef" | |
vivify_512: | |
find_lex $P1217, "$cand_class" | |
unless_null $P1217, vivify_513 | |
new $P1217, "Undef" | |
vivify_513: | |
issame $I1218, $P1216, $P1217 | |
unless $I1218, if_1212_end | |
.annotate 'line', 777 | |
new $P1219, "Integer" | |
assign $P1219, 1 | |
store_lex "$rejected", $P1219 | |
if_1212_end: | |
.annotate 'line', 779 | |
find_lex $P1220, "$cur_pos" | |
unless_null $P1220, vivify_514 | |
new $P1220, "Undef" | |
vivify_514: | |
add $P1221, $P1220, 1 | |
store_lex "$cur_pos", $P1221 | |
loop1222_next: | |
.annotate 'line', 775 | |
goto loop1222_test | |
loop1222_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1224, exception, 'type' | |
eq $P1224, .CONTROL_LOOP_NEXT, loop1222_next | |
eq $P1224, .CONTROL_LOOP_REDO, loop1222_redo | |
loop1222_done: | |
pop_eh | |
.annotate 'line', 772 | |
.return ($I1211) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1251" :anon :subid("86_1307988395.99251") :outer("81_1307988395.99251") | |
.annotate 'line', 805 | |
.const 'Sub' $P1264 = "87_1307988395.99251" | |
capture_lex $P1264 | |
.annotate 'line', 806 | |
$P1253 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1254, $P1253 | |
.lex "@new_list", $P1254 | |
.annotate 'line', 805 | |
find_lex $P1255, "@new_list" | |
unless_null $P1255, vivify_522 | |
$P1255 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_522: | |
.annotate 'line', 807 | |
find_lex $P1257, "$i" | |
unless_null $P1257, vivify_523 | |
new $P1257, "Undef" | |
vivify_523: | |
set $I1258, $P1257 | |
find_lex $P1259, "@merge_list" | |
unless_null $P1259, vivify_524 | |
$P1259 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_524: | |
set $P1260, $P1259[$I1258] | |
unless_null $P1260, vivify_525 | |
new $P1260, "Undef" | |
vivify_525: | |
defined $I1261, $P1260 | |
unless $I1261, for_undef_526 | |
iter $P1256, $P1260 | |
new $P1275, 'ExceptionHandler' | |
set_label $P1275, loop1274_handler | |
$P1275."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1275 | |
loop1274_test: | |
unless $P1256, loop1274_done | |
shift $P1262, $P1256 | |
loop1274_redo: | |
.const 'Sub' $P1264 = "87_1307988395.99251" | |
capture_lex $P1264 | |
$P1264($P1262) | |
loop1274_next: | |
goto loop1274_test | |
loop1274_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1276, exception, 'type' | |
eq $P1276, .CONTROL_LOOP_NEXT, loop1274_next | |
eq $P1276, .CONTROL_LOOP_REDO, loop1274_redo | |
loop1274_done: | |
pop_eh | |
for_undef_526: | |
.annotate 'line', 812 | |
find_lex $P1277, "@new_list" | |
unless_null $P1277, vivify_531 | |
$P1277 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_531: | |
find_lex $P1278, "$i" | |
unless_null $P1278, vivify_532 | |
new $P1278, "Undef" | |
vivify_532: | |
set $I1279, $P1278 | |
find_lex $P1280, "@merge_list" | |
unless_null $P1280, vivify_533 | |
$P1280 = root_new ['parrot';'ResizablePMCArray'] | |
store_lex "@merge_list", $P1280 | |
vivify_533: | |
set $P1280[$I1279], $P1277 | |
.annotate 'line', 813 | |
find_lex $P1281, "$i" | |
unless_null $P1281, vivify_534 | |
new $P1281, "Undef" | |
vivify_534: | |
add $P1282, $P1281, 1 | |
store_lex "$i", $P1282 | |
.annotate 'line', 805 | |
.return ($P1282) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1263" :anon :subid("87_1307988395.99251") :outer("86_1307988395.99251") | |
.param pmc param_1265 | |
.annotate 'line', 807 | |
.lex "$_", param_1265 | |
.annotate 'line', 808 | |
find_lex $P1268, "$_" | |
unless_null $P1268, vivify_527 | |
new $P1268, "Undef" | |
vivify_527: | |
find_lex $P1269, "$accepted" | |
unless_null $P1269, vivify_528 | |
new $P1269, "Undef" | |
vivify_528: | |
issame $I1270, $P1268, $P1269 | |
unless $I1270, unless_1267 | |
new $P1266, 'Integer' | |
set $P1266, $I1270 | |
goto unless_1267_end | |
unless_1267: | |
.annotate 'line', 809 | |
find_lex $P1271, "@new_list" | |
unless_null $P1271, vivify_529 | |
$P1271 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_529: | |
find_lex $P1272, "$_" | |
unless_null $P1272, vivify_530 | |
new $P1272, "Undef" | |
vivify_530: | |
$P1273 = $P1271."push"($P1272) | |
.annotate 'line', 808 | |
set $P1266, $P1273 | |
unless_1267_end: | |
.annotate 'line', 807 | |
.return ($P1266) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "new" :anon :subid("88_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1300 | |
.param pmc param_1301 :optional :named("name") | |
.param int has_param_1301 :opt_flag | |
.annotate 'line', 535 | |
.lex "self", param_1300 | |
if has_param_1301, optparam_539 | |
new $P1302, "Undef" | |
set param_1301, $P1302 | |
optparam_539: | |
.lex "$name", param_1301 | |
.annotate 'line', 536 | |
new $P1303, "Undef" | |
set $P1304, $P1303 | |
.lex "$obj", $P1304 | |
find_lex $P1305, "self" | |
repr_instance_of $P1306, $P1305 | |
store_lex "$obj", $P1306 | |
.annotate 'line', 537 | |
find_lex $P1307, "$obj" | |
unless_null $P1307, vivify_540 | |
new $P1307, "Undef" | |
vivify_540: | |
find_lex $P1308, "$name" | |
unless_null $P1308, vivify_541 | |
new $P1308, "Undef" | |
vivify_541: | |
$P1307."BUILD"($P1308 :named("name")) | |
find_lex $P1309, "$obj" | |
unless_null $P1309, vivify_542 | |
new $P1309, "Undef" | |
vivify_542: | |
.annotate 'line', 535 | |
.return ($P1309) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "BUILD" :anon :subid("89_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1311 | |
.param pmc param_1312 :optional :named("name") | |
.param int has_param_1312 :opt_flag | |
.annotate 'line', 541 | |
.lex "self", param_1311 | |
if has_param_1312, optparam_543 | |
new $P1313, "Undef" | |
set param_1312, $P1313 | |
optparam_543: | |
.lex "$name", param_1312 | |
.annotate 'line', 542 | |
find_lex $P1314, "$name" | |
unless_null $P1314, vivify_544 | |
new $P1314, "Undef" | |
vivify_544: | |
find_lex $P1315, "self" | |
find_lex $P1316, "$?CLASS" | |
setattribute $P1315, $P1316, "$!name", $P1314 | |
.annotate 'line', 541 | |
.return ($P1314) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "new_type" :anon :subid("90_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1318 | |
.param pmc param_1319 :optional :named("name") | |
.param int has_param_1319 :opt_flag | |
.param pmc param_1321 :optional :named("repr") | |
.param int has_param_1321 :opt_flag | |
.annotate 'line', 547 | |
.lex "self", param_1318 | |
if has_param_1319, optparam_545 | |
new $P1320, "String" | |
assign $P1320, "<anon>" | |
set param_1319, $P1320 | |
optparam_545: | |
.lex "$name", param_1319 | |
if has_param_1321, optparam_546 | |
new $P1322, "String" | |
assign $P1322, "P6opaque" | |
set param_1321, $P1322 | |
optparam_546: | |
.lex "$repr", param_1321 | |
.annotate 'line', 548 | |
new $P1323, "Undef" | |
set $P1324, $P1323 | |
.lex "$metaclass", $P1324 | |
find_lex $P1325, "self" | |
find_lex $P1326, "$name" | |
unless_null $P1326, vivify_547 | |
new $P1326, "Undef" | |
vivify_547: | |
$P1327 = $P1325."new"($P1326 :named("name")) | |
store_lex "$metaclass", $P1327 | |
.annotate 'line', 550 | |
find_lex $P1328, "$metaclass" | |
unless_null $P1328, vivify_548 | |
new $P1328, "Undef" | |
vivify_548: | |
find_lex $P1329, "$repr" | |
unless_null $P1329, vivify_549 | |
new $P1329, "Undef" | |
vivify_549: | |
set $S1330, $P1329 | |
repr_type_object_for $P1331, $P1328, $S1330 | |
$P1332 = root_new ['parrot';'Hash'] | |
set_who $P1331, $P1332 | |
.annotate 'line', 547 | |
.return ($P1331) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "add_method" :anon :subid("91_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1334 | |
.param pmc param_1335 | |
.param pmc param_1336 | |
.param pmc param_1337 | |
.annotate 'line', 554 | |
.lex "self", param_1334 | |
.lex "$obj", param_1335 | |
.lex "$name", param_1336 | |
.lex "$code_obj", param_1337 | |
.annotate 'line', 555 | |
find_lex $P1339, "$name" | |
unless_null $P1339, vivify_550 | |
new $P1339, "Undef" | |
vivify_550: | |
find_lex $P1340, "self" | |
find_lex $P1341, "$?CLASS" | |
getattribute $P1342, $P1340, $P1341, "%!methods" | |
unless_null $P1342, vivify_551 | |
$P1342 = root_new ['parrot';'Hash'] | |
vivify_551: | |
set $P1343, $P1342[$P1339] | |
unless_null $P1343, vivify_552 | |
new $P1343, "Undef" | |
vivify_552: | |
unless $P1343, if_1338_end | |
.annotate 'line', 556 | |
new $P1344, "String" | |
assign $P1344, "This class already has a method named " | |
find_lex $P1345, "$name" | |
unless_null $P1345, vivify_553 | |
new $P1345, "Undef" | |
vivify_553: | |
concat $P1346, $P1344, $P1345 | |
die $P1346 | |
if_1338_end: | |
.annotate 'line', 558 | |
find_lex $P1350, "$code_obj" | |
unless_null $P1350, vivify_554 | |
new $P1350, "Undef" | |
vivify_554: | |
isnull $I1351, $P1350 | |
unless $I1351, unless_1349 | |
new $P1348, 'Integer' | |
set $P1348, $I1351 | |
goto unless_1349_end | |
unless_1349: | |
find_lex $P1352, "$code_obj" | |
unless_null $P1352, vivify_555 | |
new $P1352, "Undef" | |
vivify_555: | |
isa $I1353, $P1352, "Undef" | |
new $P1348, 'Integer' | |
set $P1348, $I1353 | |
unless_1349_end: | |
unless $P1348, if_1347_end | |
.annotate 'line', 559 | |
new $P1354, 'String' | |
set $P1354, "Cannot add a null method '" | |
find_lex $P1355, "$name" | |
unless_null $P1355, vivify_556 | |
new $P1355, "Undef" | |
vivify_556: | |
concat $P1356, $P1354, $P1355 | |
concat $P1357, $P1356, "' to class '" | |
find_lex $P1358, "self" | |
find_lex $P1359, "$?CLASS" | |
getattribute $P1360, $P1358, $P1359, "$!name" | |
unless_null $P1360, vivify_557 | |
new $P1360, "Undef" | |
vivify_557: | |
concat $P1361, $P1357, $P1360 | |
concat $P1362, $P1361, "'" | |
die $P1362 | |
if_1347_end: | |
.annotate 'line', 561 | |
find_lex $P1363, "$code_obj" | |
unless_null $P1363, vivify_558 | |
new $P1363, "Undef" | |
vivify_558: | |
find_lex $P1364, "$name" | |
unless_null $P1364, vivify_559 | |
new $P1364, "Undef" | |
vivify_559: | |
find_lex $P1365, "self" | |
find_lex $P1366, "$?CLASS" | |
getattribute $P1367, $P1365, $P1366, "%!methods" | |
unless_null $P1367, vivify_560 | |
$P1367 = root_new ['parrot';'Hash'] | |
setattribute $P1365, $P1366, "%!methods", $P1367 | |
vivify_560: | |
set $P1367[$P1364], $P1363 | |
.annotate 'line', 554 | |
.return ($P1363) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "add_multi_method" :anon :subid("92_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1369 | |
.param pmc param_1370 | |
.param pmc param_1371 | |
.param pmc param_1372 | |
.annotate 'line', 564 | |
.lex "self", param_1369 | |
.lex "$obj", param_1370 | |
.lex "$name", param_1371 | |
.lex "$code_obj", param_1372 | |
.annotate 'line', 570 | |
$P1373 = root_new ['parrot';'Hash'] | |
set $P1374, $P1373 | |
.lex "%todo", $P1374 | |
.annotate 'line', 564 | |
find_lex $P1375, "%todo" | |
unless_null $P1375, vivify_561 | |
$P1375 = root_new ['parrot';'Hash'] | |
vivify_561: | |
.annotate 'line', 571 | |
find_lex $P1376, "$name" | |
unless_null $P1376, vivify_562 | |
new $P1376, "Undef" | |
vivify_562: | |
find_lex $P1377, "%todo" | |
unless_null $P1377, vivify_563 | |
$P1377 = root_new ['parrot';'Hash'] | |
store_lex "%todo", $P1377 | |
vivify_563: | |
set $P1377["name"], $P1376 | |
.annotate 'line', 572 | |
find_lex $P1378, "$code_obj" | |
unless_null $P1378, vivify_564 | |
new $P1378, "Undef" | |
vivify_564: | |
find_lex $P1379, "%todo" | |
unless_null $P1379, vivify_565 | |
$P1379 = root_new ['parrot';'Hash'] | |
store_lex "%todo", $P1379 | |
vivify_565: | |
set $P1379["code"], $P1378 | |
.annotate 'line', 573 | |
find_lex $P1380, "%todo" | |
unless_null $P1380, vivify_566 | |
$P1380 = root_new ['parrot';'Hash'] | |
vivify_566: | |
find_lex $P1381, "self" | |
find_lex $P1382, "$?CLASS" | |
getattribute $P1383, $P1381, $P1382, "@!multi_methods_to_incorporate" | |
unless_null $P1383, vivify_567 | |
$P1383 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_567: | |
set $N1384, $P1383 | |
set $I1385, $N1384 | |
find_lex $P1386, "self" | |
find_lex $P1387, "$?CLASS" | |
getattribute $P1388, $P1386, $P1387, "@!multi_methods_to_incorporate" | |
unless_null $P1388, vivify_568 | |
$P1388 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P1386, $P1387, "@!multi_methods_to_incorporate", $P1388 | |
vivify_568: | |
set $P1388[$I1385], $P1380 | |
find_lex $P1389, "$code_obj" | |
unless_null $P1389, vivify_569 | |
new $P1389, "Undef" | |
vivify_569: | |
.annotate 'line', 564 | |
.return ($P1389) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "add_attribute" :anon :subid("93_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1391 | |
.param pmc param_1392 | |
.param pmc param_1393 | |
.annotate 'line', 577 | |
.lex "self", param_1391 | |
.lex "$obj", param_1392 | |
.lex "$meta_attr", param_1393 | |
.annotate 'line', 578 | |
new $P1394, "Undef" | |
set $P1395, $P1394 | |
.lex "$name", $P1395 | |
find_lex $P1396, "$meta_attr" | |
unless_null $P1396, vivify_570 | |
new $P1396, "Undef" | |
vivify_570: | |
$P1397 = $P1396."name"() | |
store_lex "$name", $P1397 | |
.annotate 'line', 579 | |
find_lex $P1399, "$name" | |
unless_null $P1399, vivify_571 | |
new $P1399, "Undef" | |
vivify_571: | |
find_lex $P1400, "self" | |
find_lex $P1401, "$?CLASS" | |
getattribute $P1402, $P1400, $P1401, "%!attributes" | |
unless_null $P1402, vivify_572 | |
$P1402 = root_new ['parrot';'Hash'] | |
vivify_572: | |
set $P1403, $P1402[$P1399] | |
unless_null $P1403, vivify_573 | |
new $P1403, "Undef" | |
vivify_573: | |
unless $P1403, if_1398_end | |
.annotate 'line', 580 | |
new $P1404, "String" | |
assign $P1404, "This class already has an attribute named " | |
find_lex $P1405, "$name" | |
unless_null $P1405, vivify_574 | |
new $P1405, "Undef" | |
vivify_574: | |
concat $P1406, $P1404, $P1405 | |
die $P1406 | |
if_1398_end: | |
.annotate 'line', 582 | |
find_lex $P1407, "$meta_attr" | |
unless_null $P1407, vivify_575 | |
new $P1407, "Undef" | |
vivify_575: | |
find_lex $P1408, "$name" | |
unless_null $P1408, vivify_576 | |
new $P1408, "Undef" | |
vivify_576: | |
find_lex $P1409, "self" | |
find_lex $P1410, "$?CLASS" | |
getattribute $P1411, $P1409, $P1410, "%!attributes" | |
unless_null $P1411, vivify_577 | |
$P1411 = root_new ['parrot';'Hash'] | |
setattribute $P1409, $P1410, "%!attributes", $P1411 | |
vivify_577: | |
set $P1411[$P1408], $P1407 | |
.annotate 'line', 577 | |
.return ($P1407) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "add_parent" :anon :subid("94_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1413 | |
.param pmc param_1414 | |
.param pmc param_1415 | |
.annotate 'line', 585 | |
.const 'Sub' $P1437 = "95_1307988395.99251" | |
capture_lex $P1437 | |
.lex "self", param_1413 | |
.lex "$obj", param_1414 | |
.lex "$parent", param_1415 | |
.annotate 'line', 586 | |
find_lex $P1417, "self" | |
find_lex $P1418, "$?CLASS" | |
getattribute $P1419, $P1417, $P1418, "$!composed" | |
unless_null $P1419, vivify_578 | |
new $P1419, "Undef" | |
vivify_578: | |
unless $P1419, if_1416_end | |
.annotate 'line', 587 | |
die "NQPClassHOW does not support adding parents after being composed." | |
if_1416_end: | |
.annotate 'line', 589 | |
find_lex $P1421, "$obj" | |
unless_null $P1421, vivify_579 | |
new $P1421, "Undef" | |
vivify_579: | |
find_lex $P1422, "$parent" | |
unless_null $P1422, vivify_580 | |
new $P1422, "Undef" | |
vivify_580: | |
issame $I1423, $P1421, $P1422 | |
unless $I1423, if_1420_end | |
.annotate 'line', 590 | |
new $P1424, 'String' | |
set $P1424, "Class '" | |
find_lex $P1425, "self" | |
find_lex $P1426, "$?CLASS" | |
getattribute $P1427, $P1425, $P1426, "$!name" | |
unless_null $P1427, vivify_581 | |
new $P1427, "Undef" | |
vivify_581: | |
concat $P1428, $P1424, $P1427 | |
concat $P1429, $P1428, "' cannot inherit from itself." | |
die $P1429 | |
if_1420_end: | |
.annotate 'line', 592 | |
find_lex $P1431, "self" | |
find_lex $P1432, "$?CLASS" | |
getattribute $P1433, $P1431, $P1432, "@!parents" | |
unless_null $P1433, vivify_582 | |
$P1433 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_582: | |
defined $I1434, $P1433 | |
unless $I1434, for_undef_583 | |
iter $P1430, $P1433 | |
new $P1449, 'ExceptionHandler' | |
set_label $P1449, loop1448_handler | |
$P1449."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1449 | |
loop1448_test: | |
unless $P1430, loop1448_done | |
shift $P1435, $P1430 | |
loop1448_redo: | |
.const 'Sub' $P1437 = "95_1307988395.99251" | |
capture_lex $P1437 | |
$P1437($P1435) | |
loop1448_next: | |
goto loop1448_test | |
loop1448_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1450, exception, 'type' | |
eq $P1450, .CONTROL_LOOP_NEXT, loop1448_next | |
eq $P1450, .CONTROL_LOOP_REDO, loop1448_redo | |
loop1448_done: | |
pop_eh | |
for_undef_583: | |
.annotate 'line', 597 | |
find_lex $P1451, "$parent" | |
unless_null $P1451, vivify_587 | |
new $P1451, "Undef" | |
vivify_587: | |
find_lex $P1452, "self" | |
find_lex $P1453, "$?CLASS" | |
getattribute $P1454, $P1452, $P1453, "@!parents" | |
unless_null $P1454, vivify_588 | |
$P1454 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_588: | |
set $N1455, $P1454 | |
set $I1456, $N1455 | |
find_lex $P1457, "self" | |
find_lex $P1458, "$?CLASS" | |
getattribute $P1459, $P1457, $P1458, "@!parents" | |
unless_null $P1459, vivify_589 | |
$P1459 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P1457, $P1458, "@!parents", $P1459 | |
vivify_589: | |
set $P1459[$I1456], $P1451 | |
.annotate 'line', 585 | |
.return ($P1451) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1436" :anon :subid("95_1307988395.99251") :outer("94_1307988395.99251") | |
.param pmc param_1438 | |
.annotate 'line', 592 | |
.lex "$_", param_1438 | |
.annotate 'line', 593 | |
find_lex $P1441, "$_" | |
unless_null $P1441, vivify_584 | |
new $P1441, "Undef" | |
vivify_584: | |
find_lex $P1442, "$parent" | |
unless_null $P1442, vivify_585 | |
new $P1442, "Undef" | |
vivify_585: | |
issame $I1443, $P1441, $P1442 | |
if $I1443, if_1440 | |
new $P1439, 'Integer' | |
set $P1439, $I1443 | |
goto if_1440_end | |
if_1440: | |
.annotate 'line', 594 | |
new $P1444, "String" | |
assign $P1444, "Already have " | |
find_lex $P1445, "$parent" | |
unless_null $P1445, vivify_586 | |
new $P1445, "Undef" | |
vivify_586: | |
concat $P1446, $P1444, $P1445 | |
concat $P1447, $P1446, " as a parent class." | |
die $P1447 | |
if_1440_end: | |
.annotate 'line', 592 | |
.return ($P1439) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "set_default_parent" :anon :subid("96_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1461 | |
.param pmc param_1462 | |
.param pmc param_1463 | |
.annotate 'line', 600 | |
.lex "self", param_1461 | |
.lex "$obj", param_1462 | |
.lex "$parent", param_1463 | |
.annotate 'line', 601 | |
find_lex $P1464, "$parent" | |
unless_null $P1464, vivify_590 | |
new $P1464, "Undef" | |
vivify_590: | |
find_lex $P1465, "self" | |
find_lex $P1466, "$?CLASS" | |
setattribute $P1465, $P1466, "$!default_parent", $P1464 | |
.annotate 'line', 600 | |
.return ($P1464) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "add_role" :anon :subid("97_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1468 | |
.param pmc param_1469 | |
.param pmc param_1470 | |
.annotate 'line', 604 | |
.const 'Sub' $P1478 = "98_1307988395.99251" | |
capture_lex $P1478 | |
.lex "self", param_1468 | |
.lex "$obj", param_1469 | |
.lex "$role", param_1470 | |
.annotate 'line', 605 | |
find_lex $P1472, "self" | |
find_lex $P1473, "$?CLASS" | |
getattribute $P1474, $P1472, $P1473, "@!roles" | |
unless_null $P1474, vivify_591 | |
$P1474 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_591: | |
defined $I1475, $P1474 | |
unless $I1475, for_undef_592 | |
iter $P1471, $P1474 | |
new $P1490, 'ExceptionHandler' | |
set_label $P1490, loop1489_handler | |
$P1490."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1490 | |
loop1489_test: | |
unless $P1471, loop1489_done | |
shift $P1476, $P1471 | |
loop1489_redo: | |
.const 'Sub' $P1478 = "98_1307988395.99251" | |
capture_lex $P1478 | |
$P1478($P1476) | |
loop1489_next: | |
goto loop1489_test | |
loop1489_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1491, exception, 'type' | |
eq $P1491, .CONTROL_LOOP_NEXT, loop1489_next | |
eq $P1491, .CONTROL_LOOP_REDO, loop1489_redo | |
loop1489_done: | |
pop_eh | |
for_undef_592: | |
.annotate 'line', 610 | |
find_lex $P1492, "$role" | |
unless_null $P1492, vivify_596 | |
new $P1492, "Undef" | |
vivify_596: | |
find_lex $P1493, "self" | |
find_lex $P1494, "$?CLASS" | |
getattribute $P1495, $P1493, $P1494, "@!roles" | |
unless_null $P1495, vivify_597 | |
$P1495 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_597: | |
set $N1496, $P1495 | |
set $I1497, $N1496 | |
find_lex $P1498, "self" | |
find_lex $P1499, "$?CLASS" | |
getattribute $P1500, $P1498, $P1499, "@!roles" | |
unless_null $P1500, vivify_598 | |
$P1500 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P1498, $P1499, "@!roles", $P1500 | |
vivify_598: | |
set $P1500[$I1497], $P1492 | |
.annotate 'line', 604 | |
.return ($P1492) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1477" :anon :subid("98_1307988395.99251") :outer("97_1307988395.99251") | |
.param pmc param_1479 | |
.annotate 'line', 605 | |
.lex "$_", param_1479 | |
.annotate 'line', 606 | |
find_lex $P1482, "$_" | |
unless_null $P1482, vivify_593 | |
new $P1482, "Undef" | |
vivify_593: | |
find_lex $P1483, "$role" | |
unless_null $P1483, vivify_594 | |
new $P1483, "Undef" | |
vivify_594: | |
issame $I1484, $P1482, $P1483 | |
if $I1484, if_1481 | |
new $P1480, 'Integer' | |
set $P1480, $I1484 | |
goto if_1481_end | |
if_1481: | |
.annotate 'line', 607 | |
new $P1485, "String" | |
assign $P1485, "The role " | |
find_lex $P1486, "$role" | |
unless_null $P1486, vivify_595 | |
new $P1486, "Undef" | |
vivify_595: | |
concat $P1487, $P1485, $P1486 | |
concat $P1488, $P1487, " has already been added." | |
die $P1488 | |
if_1481_end: | |
.annotate 'line', 605 | |
.return ($P1480) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "add_parrot_vtable_mapping" :anon :subid("99_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1502 | |
.param pmc param_1503 | |
.param pmc param_1504 | |
.param pmc param_1505 | |
.annotate 'line', 613 | |
.lex "self", param_1502 | |
.lex "$obj", param_1503 | |
.lex "$name", param_1504 | |
.lex "$meth", param_1505 | |
.annotate 'line', 614 | |
find_lex $P1507, "$name" | |
unless_null $P1507, vivify_599 | |
new $P1507, "Undef" | |
vivify_599: | |
find_lex $P1508, "self" | |
find_lex $P1509, "$?CLASS" | |
getattribute $P1510, $P1508, $P1509, "%!parrot_vtable_mapping" | |
unless_null $P1510, vivify_600 | |
$P1510 = root_new ['parrot';'Hash'] | |
vivify_600: | |
set $P1511, $P1510[$P1507] | |
unless_null $P1511, vivify_601 | |
new $P1511, "Undef" | |
vivify_601: | |
defined $I1512, $P1511 | |
unless $I1512, if_1506_end | |
.annotate 'line', 615 | |
new $P1513, "String" | |
assign $P1513, "Class '" | |
find_lex $P1514, "self" | |
find_lex $P1515, "$?CLASS" | |
getattribute $P1516, $P1514, $P1515, "$!name" | |
unless_null $P1516, vivify_602 | |
new $P1516, "Undef" | |
vivify_602: | |
concat $P1517, $P1513, $P1516 | |
concat $P1518, $P1517, "' already has a Parrot v-table override for '" | |
find_lex $P1519, "$name" | |
unless_null $P1519, vivify_603 | |
new $P1519, "Undef" | |
vivify_603: | |
concat $P1520, $P1518, $P1519 | |
.annotate 'line', 616 | |
concat $P1521, $P1520, "'" | |
.annotate 'line', 617 | |
die $P1521 | |
if_1506_end: | |
.annotate 'line', 619 | |
find_lex $P1522, "$meth" | |
unless_null $P1522, vivify_604 | |
new $P1522, "Undef" | |
vivify_604: | |
find_lex $P1523, "$name" | |
unless_null $P1523, vivify_605 | |
new $P1523, "Undef" | |
vivify_605: | |
find_lex $P1524, "self" | |
find_lex $P1525, "$?CLASS" | |
getattribute $P1526, $P1524, $P1525, "%!parrot_vtable_mapping" | |
unless_null $P1526, vivify_606 | |
$P1526 = root_new ['parrot';'Hash'] | |
setattribute $P1524, $P1525, "%!parrot_vtable_mapping", $P1526 | |
vivify_606: | |
set $P1526[$P1523], $P1522 | |
.annotate 'line', 613 | |
.return ($P1522) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "add_parrot_vtable_handler_mapping" :anon :subid("100_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1528 | |
.param pmc param_1529 | |
.param pmc param_1530 | |
.param pmc param_1531 | |
.annotate 'line', 622 | |
.lex "self", param_1528 | |
.lex "$obj", param_1529 | |
.lex "$name", param_1530 | |
.lex "$att_name", param_1531 | |
.annotate 'line', 623 | |
find_lex $P1533, "$name" | |
unless_null $P1533, vivify_607 | |
new $P1533, "Undef" | |
vivify_607: | |
find_lex $P1534, "self" | |
find_lex $P1535, "$?CLASS" | |
getattribute $P1536, $P1534, $P1535, "%!parrot_vtable_handler_mapping" | |
unless_null $P1536, vivify_608 | |
$P1536 = root_new ['parrot';'Hash'] | |
vivify_608: | |
set $P1537, $P1536[$P1533] | |
unless_null $P1537, vivify_609 | |
new $P1537, "Undef" | |
vivify_609: | |
defined $I1538, $P1537 | |
unless $I1538, if_1532_end | |
.annotate 'line', 624 | |
new $P1539, "String" | |
assign $P1539, "Class '" | |
find_lex $P1540, "self" | |
find_lex $P1541, "$?CLASS" | |
getattribute $P1542, $P1540, $P1541, "$!name" | |
unless_null $P1542, vivify_610 | |
new $P1542, "Undef" | |
vivify_610: | |
concat $P1543, $P1539, $P1542 | |
concat $P1544, $P1543, "' already has a Parrot v-table handler for '" | |
find_lex $P1545, "$name" | |
unless_null $P1545, vivify_611 | |
new $P1545, "Undef" | |
vivify_611: | |
concat $P1546, $P1544, $P1545 | |
.annotate 'line', 625 | |
concat $P1547, $P1546, "'" | |
.annotate 'line', 626 | |
die $P1547 | |
if_1532_end: | |
.annotate 'line', 628 | |
find_lex $P1548, "$obj" | |
unless_null $P1548, vivify_612 | |
new $P1548, "Undef" | |
vivify_612: | |
find_lex $P1549, "$att_name" | |
unless_null $P1549, vivify_613 | |
new $P1549, "Undef" | |
vivify_613: | |
new $P1550, "ResizablePMCArray" | |
push $P1550, $P1548 | |
push $P1550, $P1549 | |
find_lex $P1551, "$name" | |
unless_null $P1551, vivify_614 | |
new $P1551, "Undef" | |
vivify_614: | |
find_lex $P1552, "self" | |
find_lex $P1553, "$?CLASS" | |
getattribute $P1554, $P1552, $P1553, "%!parrot_vtable_handler_mapping" | |
unless_null $P1554, vivify_615 | |
$P1554 = root_new ['parrot';'Hash'] | |
setattribute $P1552, $P1553, "%!parrot_vtable_handler_mapping", $P1554 | |
vivify_615: | |
set $P1554[$P1551], $P1550 | |
.annotate 'line', 622 | |
.return ($P1550) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "compose" :anon :subid("101_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1556 | |
.param pmc param_1557 | |
.annotate 'line', 631 | |
.const 'Sub' $P1648 = "104_1307988395.99251" | |
capture_lex $P1648 | |
.const 'Sub' $P1563 = "102_1307988395.99251" | |
capture_lex $P1563 | |
.lex "self", param_1556 | |
.lex "$obj", param_1557 | |
.annotate 'line', 635 | |
find_lex $P1559, "self" | |
find_lex $P1560, "$?CLASS" | |
getattribute $P1561, $P1559, $P1560, "@!roles" | |
unless_null $P1561, vivify_616 | |
$P1561 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_616: | |
unless $P1561, if_1558_end | |
.const 'Sub' $P1563 = "102_1307988395.99251" | |
capture_lex $P1563 | |
$P1563() | |
if_1558_end: | |
.annotate 'line', 648 | |
find_lex $P1613, "self" | |
find_lex $P1614, "$?CLASS" | |
getattribute $P1615, $P1613, $P1614, "@!parents" | |
unless_null $P1615, vivify_633 | |
$P1615 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_633: | |
set $N1616, $P1615 | |
iseq $I1617, $N1616, 0.0 | |
if $I1617, if_1612 | |
new $P1611, 'Integer' | |
set $P1611, $I1617 | |
goto if_1612_end | |
if_1612: | |
find_lex $P1618, "self" | |
find_lex $P1619, "$?CLASS" | |
getattribute $P1620, $P1618, $P1619, "$!name" | |
unless_null $P1620, vivify_634 | |
new $P1620, "Undef" | |
vivify_634: | |
set $S1621, $P1620 | |
isne $I1622, $S1621, "NQPMu" | |
new $P1611, 'Integer' | |
set $P1611, $I1622 | |
if_1612_end: | |
unless $P1611, if_1610_end | |
.annotate 'line', 649 | |
find_lex $P1623, "self" | |
find_lex $P1624, "$obj" | |
unless_null $P1624, vivify_635 | |
new $P1624, "Undef" | |
vivify_635: | |
find_lex $P1625, "self" | |
find_lex $P1626, "$?CLASS" | |
getattribute $P1627, $P1625, $P1626, "$!default_parent" | |
unless_null $P1627, vivify_636 | |
new $P1627, "Undef" | |
vivify_636: | |
$P1623."add_parent"($P1624, $P1627) | |
if_1610_end: | |
.annotate 'line', 654 | |
find_lex $P1629, "self" | |
find_lex $P1630, "$?CLASS" | |
getattribute $P1631, $P1629, $P1630, "$!composed" | |
unless_null $P1631, vivify_637 | |
new $P1631, "Undef" | |
vivify_637: | |
if $P1631, unless_1628_end | |
.annotate 'line', 655 | |
find_lex $P1632, "$obj" | |
unless_null $P1632, vivify_638 | |
new $P1632, "Undef" | |
vivify_638: | |
$P1633 = "compute_c3_mro"($P1632) | |
find_lex $P1634, "self" | |
find_lex $P1635, "$?CLASS" | |
setattribute $P1634, $P1635, "@!mro", $P1633 | |
.annotate 'line', 656 | |
new $P1636, "Integer" | |
assign $P1636, 1 | |
find_lex $P1637, "self" | |
find_lex $P1638, "$?CLASS" | |
setattribute $P1637, $P1638, "$!composed", $P1636 | |
unless_1628_end: | |
.annotate 'line', 660 | |
find_lex $P1639, "self" | |
find_lex $P1640, "$obj" | |
unless_null $P1640, vivify_639 | |
new $P1640, "Undef" | |
vivify_639: | |
$P1639."incorporate_multi_candidates"($P1640) | |
.annotate 'line', 663 | |
find_lex $P1642, "self" | |
find_lex $P1643, "$obj" | |
unless_null $P1643, vivify_640 | |
new $P1643, "Undef" | |
vivify_640: | |
$P1644 = $P1642."attributes"($P1643, "0" :named("local")) | |
defined $I1645, $P1644 | |
unless $I1645, for_undef_641 | |
iter $P1641, $P1644 | |
new $P1654, 'ExceptionHandler' | |
set_label $P1654, loop1653_handler | |
$P1654."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1654 | |
loop1653_test: | |
unless $P1641, loop1653_done | |
shift $P1646, $P1641 | |
loop1653_redo: | |
.const 'Sub' $P1648 = "104_1307988395.99251" | |
capture_lex $P1648 | |
$P1648($P1646) | |
loop1653_next: | |
goto loop1653_test | |
loop1653_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1655, exception, 'type' | |
eq $P1655, .CONTROL_LOOP_NEXT, loop1653_next | |
eq $P1655, .CONTROL_LOOP_REDO, loop1653_redo | |
loop1653_done: | |
pop_eh | |
for_undef_641: | |
.annotate 'line', 666 | |
find_lex $P1656, "self" | |
find_lex $P1657, "$obj" | |
unless_null $P1657, vivify_644 | |
new $P1657, "Undef" | |
vivify_644: | |
$P1656."publish_type_cache"($P1657) | |
.annotate 'line', 667 | |
find_lex $P1658, "self" | |
find_lex $P1659, "$obj" | |
unless_null $P1659, vivify_645 | |
new $P1659, "Undef" | |
vivify_645: | |
$P1658."publish_method_cache"($P1659) | |
.annotate 'line', 670 | |
find_lex $P1660, "self" | |
find_lex $P1661, "$obj" | |
unless_null $P1661, vivify_646 | |
new $P1661, "Undef" | |
vivify_646: | |
$P1660."publish_parrot_vtable_mapping"($P1661) | |
.annotate 'line', 671 | |
find_lex $P1662, "self" | |
find_lex $P1663, "$obj" | |
unless_null $P1663, vivify_647 | |
new $P1663, "Undef" | |
vivify_647: | |
$P1662."publish_parrot_vtablee_handler_mapping"($P1663) | |
find_lex $P1664, "$obj" | |
unless_null $P1664, vivify_648 | |
new $P1664, "Undef" | |
vivify_648: | |
.annotate 'line', 631 | |
.return ($P1664) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1562" :anon :subid("102_1307988395.99251") :outer("101_1307988395.99251") | |
.annotate 'line', 635 | |
.const 'Sub' $P1574 = "103_1307988395.99251" | |
capture_lex $P1574 | |
.annotate 'line', 636 | |
$P1564 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1565, $P1564 | |
.lex "@instantiated_roles", $P1565 | |
.annotate 'line', 635 | |
find_lex $P1566, "@instantiated_roles" | |
unless_null $P1566, vivify_617 | |
$P1566 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_617: | |
.annotate 'line', 637 | |
find_lex $P1568, "self" | |
find_lex $P1569, "$?CLASS" | |
getattribute $P1570, $P1568, $P1569, "@!roles" | |
unless_null $P1570, vivify_618 | |
$P1570 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_618: | |
defined $I1571, $P1570 | |
unless $I1571, for_undef_619 | |
iter $P1567, $P1570 | |
new $P1604, 'ExceptionHandler' | |
set_label $P1604, loop1603_handler | |
$P1604."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1604 | |
loop1603_test: | |
unless $P1567, loop1603_done | |
shift $P1572, $P1567 | |
loop1603_redo: | |
.const 'Sub' $P1574 = "103_1307988395.99251" | |
capture_lex $P1574 | |
$P1574($P1572) | |
loop1603_next: | |
goto loop1603_test | |
loop1603_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1605, exception, 'type' | |
eq $P1605, .CONTROL_LOOP_NEXT, loop1603_next | |
eq $P1605, .CONTROL_LOOP_REDO, loop1603_redo | |
loop1603_done: | |
pop_eh | |
for_undef_619: | |
.annotate 'line', 643 | |
find_lex $P1606, "RoleToClassApplier" | |
find_lex $P1607, "$obj" | |
unless_null $P1607, vivify_631 | |
new $P1607, "Undef" | |
vivify_631: | |
find_lex $P1608, "@instantiated_roles" | |
unless_null $P1608, vivify_632 | |
$P1608 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_632: | |
$P1609 = $P1606."apply"($P1607, $P1608) | |
.annotate 'line', 635 | |
.return ($P1609) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1573" :anon :subid("103_1307988395.99251") :outer("102_1307988395.99251") | |
.param pmc param_1577 | |
.annotate 'line', 638 | |
new $P1575, "Undef" | |
set $P1576, $P1575 | |
.lex "$ins", $P1576 | |
.lex "$_", param_1577 | |
find_lex $P1578, "$_" | |
unless_null $P1578, vivify_620 | |
new $P1578, "Undef" | |
vivify_620: | |
get_how $P1579, $P1578 | |
find_lex $P1580, "$_" | |
unless_null $P1580, vivify_621 | |
new $P1580, "Undef" | |
vivify_621: | |
find_lex $P1581, "$obj" | |
unless_null $P1581, vivify_622 | |
new $P1581, "Undef" | |
vivify_622: | |
$P1582 = $P1579."instantiate"($P1580, $P1581) | |
store_lex "$ins", $P1582 | |
.annotate 'line', 639 | |
find_lex $P1583, "@instantiated_roles" | |
unless_null $P1583, vivify_623 | |
$P1583 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_623: | |
find_lex $P1584, "$ins" | |
unless_null $P1584, vivify_624 | |
new $P1584, "Undef" | |
vivify_624: | |
$P1583."push"($P1584) | |
.annotate 'line', 640 | |
find_lex $P1585, "$_" | |
unless_null $P1585, vivify_625 | |
new $P1585, "Undef" | |
vivify_625: | |
find_lex $P1586, "self" | |
find_lex $P1587, "$?CLASS" | |
getattribute $P1588, $P1586, $P1587, "@!done" | |
unless_null $P1588, vivify_626 | |
$P1588 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_626: | |
set $N1589, $P1588 | |
set $I1590, $N1589 | |
find_lex $P1591, "self" | |
find_lex $P1592, "$?CLASS" | |
getattribute $P1593, $P1591, $P1592, "@!done" | |
unless_null $P1593, vivify_627 | |
$P1593 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P1591, $P1592, "@!done", $P1593 | |
vivify_627: | |
set $P1593[$I1590], $P1585 | |
.annotate 'line', 641 | |
find_lex $P1594, "$ins" | |
unless_null $P1594, vivify_628 | |
new $P1594, "Undef" | |
vivify_628: | |
find_lex $P1595, "self" | |
find_lex $P1596, "$?CLASS" | |
getattribute $P1597, $P1595, $P1596, "@!done" | |
unless_null $P1597, vivify_629 | |
$P1597 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_629: | |
set $N1598, $P1597 | |
set $I1599, $N1598 | |
find_lex $P1600, "self" | |
find_lex $P1601, "$?CLASS" | |
getattribute $P1602, $P1600, $P1601, "@!done" | |
unless_null $P1602, vivify_630 | |
$P1602 = root_new ['parrot';'ResizablePMCArray'] | |
setattribute $P1600, $P1601, "@!done", $P1602 | |
vivify_630: | |
set $P1602[$I1599], $P1594 | |
.annotate 'line', 637 | |
.return ($P1594) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1647" :anon :subid("104_1307988395.99251") :outer("101_1307988395.99251") | |
.param pmc param_1649 | |
.annotate 'line', 663 | |
.lex "$_", param_1649 | |
find_lex $P1650, "$_" | |
unless_null $P1650, vivify_642 | |
new $P1650, "Undef" | |
vivify_642: | |
find_lex $P1651, "$obj" | |
unless_null $P1651, vivify_643 | |
new $P1651, "Undef" | |
vivify_643: | |
$P1652 = $P1650."compose"($P1651) | |
.return ($P1652) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "incorporate_multi_candidates" :anon :subid("105_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1666 | |
.param pmc param_1667 | |
.annotate 'line', 676 | |
.const 'Sub' $P1684 = "106_1307988395.99251" | |
capture_lex $P1684 | |
.lex "self", param_1666 | |
.lex "$obj", param_1667 | |
.annotate 'line', 677 | |
new $P1668, "Undef" | |
set $P1669, $P1668 | |
.lex "$num_todo", $P1669 | |
.annotate 'line', 678 | |
new $P1670, "Undef" | |
set $P1671, $P1670 | |
.lex "$i", $P1671 | |
.annotate 'line', 677 | |
find_lex $P1672, "self" | |
find_lex $P1673, "$?CLASS" | |
getattribute $P1674, $P1672, $P1673, "@!multi_methods_to_incorporate" | |
unless_null $P1674, vivify_649 | |
$P1674 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_649: | |
set $N1675, $P1674 | |
new $P1676, 'Float' | |
set $P1676, $N1675 | |
store_lex "$num_todo", $P1676 | |
.annotate 'line', 678 | |
new $P1677, "Integer" | |
assign $P1677, 0 | |
store_lex "$i", $P1677 | |
.annotate 'line', 679 | |
new $P1815, 'ExceptionHandler' | |
set_label $P1815, loop1814_handler | |
$P1815."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1815 | |
loop1814_test: | |
find_lex $P1678, "$i" | |
unless_null $P1678, vivify_650 | |
new $P1678, "Undef" | |
vivify_650: | |
set $N1679, $P1678 | |
find_lex $P1680, "$num_todo" | |
unless_null $P1680, vivify_651 | |
new $P1680, "Undef" | |
vivify_651: | |
set $N1681, $P1680 | |
isne $I1682, $N1679, $N1681 | |
unless $I1682, loop1814_done | |
loop1814_redo: | |
.const 'Sub' $P1684 = "106_1307988395.99251" | |
capture_lex $P1684 | |
$P1684() | |
loop1814_next: | |
goto loop1814_test | |
loop1814_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1816, exception, 'type' | |
eq $P1816, .CONTROL_LOOP_NEXT, loop1814_next | |
eq $P1816, .CONTROL_LOOP_REDO, loop1814_redo | |
loop1814_done: | |
pop_eh | |
.annotate 'line', 676 | |
.return ($I1682) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1683" :anon :subid("106_1307988395.99251") :outer("105_1307988395.99251") | |
.annotate 'line', 679 | |
.const 'Sub' $P1723 = "107_1307988395.99251" | |
capture_lex $P1723 | |
.annotate 'line', 681 | |
new $P1685, "Undef" | |
set $P1686, $P1685 | |
.lex "$name", $P1686 | |
.annotate 'line', 682 | |
new $P1687, "Undef" | |
set $P1688, $P1687 | |
.lex "$code", $P1688 | |
.annotate 'line', 686 | |
new $P1689, "Undef" | |
set $P1690, $P1689 | |
.lex "$dispatcher", $P1690 | |
.annotate 'line', 681 | |
find_lex $P1691, "$i" | |
unless_null $P1691, vivify_652 | |
new $P1691, "Undef" | |
vivify_652: | |
set $I1692, $P1691 | |
find_lex $P1693, "self" | |
find_lex $P1694, "$?CLASS" | |
getattribute $P1695, $P1693, $P1694, "@!multi_methods_to_incorporate" | |
unless_null $P1695, vivify_653 | |
$P1695 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_653: | |
set $P1696, $P1695[$I1692] | |
unless_null $P1696, vivify_654 | |
$P1696 = root_new ['parrot';'Hash'] | |
vivify_654: | |
set $P1697, $P1696["name"] | |
unless_null $P1697, vivify_655 | |
new $P1697, "Undef" | |
vivify_655: | |
store_lex "$name", $P1697 | |
.annotate 'line', 682 | |
find_lex $P1698, "$i" | |
unless_null $P1698, vivify_656 | |
new $P1698, "Undef" | |
vivify_656: | |
set $I1699, $P1698 | |
find_lex $P1700, "self" | |
find_lex $P1701, "$?CLASS" | |
getattribute $P1702, $P1700, $P1701, "@!multi_methods_to_incorporate" | |
unless_null $P1702, vivify_657 | |
$P1702 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_657: | |
set $P1703, $P1702[$I1699] | |
unless_null $P1703, vivify_658 | |
$P1703 = root_new ['parrot';'Hash'] | |
vivify_658: | |
set $P1704, $P1703["code"] | |
unless_null $P1704, vivify_659 | |
new $P1704, "Undef" | |
vivify_659: | |
store_lex "$code", $P1704 | |
.annotate 'line', 686 | |
find_lex $P1705, "$name" | |
unless_null $P1705, vivify_660 | |
new $P1705, "Undef" | |
vivify_660: | |
find_lex $P1706, "self" | |
find_lex $P1707, "$?CLASS" | |
getattribute $P1708, $P1706, $P1707, "%!methods" | |
unless_null $P1708, vivify_661 | |
$P1708 = root_new ['parrot';'Hash'] | |
vivify_661: | |
set $P1709, $P1708[$P1705] | |
unless_null $P1709, vivify_662 | |
new $P1709, "Undef" | |
vivify_662: | |
store_lex "$dispatcher", $P1709 | |
.annotate 'line', 687 | |
find_lex $P1711, "$dispatcher" | |
unless_null $P1711, vivify_663 | |
new $P1711, "Undef" | |
vivify_663: | |
defined $I1712, $P1711 | |
if $I1712, if_1710 | |
.annotate 'line', 697 | |
.const 'Sub' $P1723 = "107_1307988395.99251" | |
capture_lex $P1723 | |
$P1723() | |
goto if_1710_end | |
if_1710: | |
.annotate 'line', 690 | |
find_lex $P1714, "$dispatcher" | |
unless_null $P1714, vivify_694 | |
new $P1714, "Undef" | |
vivify_694: | |
is_dispatcher $I1715, $P1714 | |
if $I1715, if_1713 | |
.annotate 'line', 694 | |
new $P1718, 'String' | |
set $P1718, "Cannot have a multi candidate for " | |
find_lex $P1719, "$name" | |
unless_null $P1719, vivify_695 | |
new $P1719, "Undef" | |
vivify_695: | |
concat $P1720, $P1718, $P1719 | |
concat $P1721, $P1720, " when an only method is also in the class" | |
die $P1721 | |
.annotate 'line', 693 | |
goto if_1713_end | |
if_1713: | |
.annotate 'line', 691 | |
find_lex $P1716, "$dispatcher" | |
unless_null $P1716, vivify_696 | |
new $P1716, "Undef" | |
vivify_696: | |
find_lex $P1717, "$code" | |
unless_null $P1717, vivify_697 | |
new $P1717, "Undef" | |
vivify_697: | |
push_dispatchee $P1716, $P1717 | |
if_1713_end: | |
if_1710_end: | |
.annotate 'line', 730 | |
find_lex $P1812, "$i" | |
unless_null $P1812, vivify_698 | |
new $P1812, "Undef" | |
vivify_698: | |
add $P1813, $P1812, 1 | |
store_lex "$i", $P1813 | |
.annotate 'line', 679 | |
.return ($P1813) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1722" :anon :subid("107_1307988395.99251") :outer("106_1307988395.99251") | |
.annotate 'line', 697 | |
.const 'Sub' $P1742 = "108_1307988395.99251" | |
capture_lex $P1742 | |
.annotate 'line', 699 | |
new $P1724, "Undef" | |
set $P1725, $P1724 | |
.lex "$j", $P1725 | |
.annotate 'line', 700 | |
new $P1726, "Undef" | |
set $P1727, $P1726 | |
.lex "$found", $P1727 | |
.annotate 'line', 699 | |
new $P1728, "Integer" | |
assign $P1728, 1 | |
store_lex "$j", $P1728 | |
.annotate 'line', 700 | |
new $P1729, "Integer" | |
assign $P1729, 0 | |
store_lex "$found", $P1729 | |
.annotate 'line', 701 | |
new $P1803, 'ExceptionHandler' | |
set_label $P1803, loop1802_handler | |
$P1803."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1803 | |
loop1802_test: | |
find_lex $P1732, "$j" | |
unless_null $P1732, vivify_664 | |
new $P1732, "Undef" | |
vivify_664: | |
set $N1733, $P1732 | |
find_lex $P1734, "self" | |
find_lex $P1735, "$?CLASS" | |
getattribute $P1736, $P1734, $P1735, "@!mro" | |
unless_null $P1736, vivify_665 | |
$P1736 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_665: | |
set $N1737, $P1736 | |
isne $I1738, $N1733, $N1737 | |
if $I1738, if_1731 | |
new $P1730, 'Integer' | |
set $P1730, $I1738 | |
goto if_1731_end | |
if_1731: | |
find_lex $P1739, "$found" | |
unless_null $P1739, vivify_666 | |
new $P1739, "Undef" | |
vivify_666: | |
isfalse $I1740, $P1739 | |
new $P1730, 'Integer' | |
set $P1730, $I1740 | |
if_1731_end: | |
unless $P1730, loop1802_done | |
loop1802_redo: | |
.const 'Sub' $P1742 = "108_1307988395.99251" | |
capture_lex $P1742 | |
$P1742() | |
loop1802_next: | |
goto loop1802_test | |
loop1802_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1804, exception, 'type' | |
eq $P1804, .CONTROL_LOOP_NEXT, loop1802_next | |
eq $P1804, .CONTROL_LOOP_REDO, loop1802_redo | |
loop1802_done: | |
pop_eh | |
.annotate 'line', 726 | |
find_lex $P1807, "$found" | |
unless_null $P1807, vivify_692 | |
new $P1807, "Undef" | |
vivify_692: | |
unless $P1807, unless_1806 | |
set $P1805, $P1807 | |
goto unless_1806_end | |
unless_1806: | |
.annotate 'line', 727 | |
new $P1808, 'String' | |
set $P1808, "Could not find a proto for multi " | |
find_lex $P1809, "$name" | |
unless_null $P1809, vivify_693 | |
new $P1809, "Undef" | |
vivify_693: | |
concat $P1810, $P1808, $P1809 | |
concat $P1811, $P1810, ", and proto generation is NYI" | |
die $P1811 | |
unless_1806_end: | |
.annotate 'line', 697 | |
.return ($P1805) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1741" :anon :subid("108_1307988395.99251") :outer("107_1307988395.99251") | |
.annotate 'line', 701 | |
.const 'Sub' $P1769 = "109_1307988395.99251" | |
capture_lex $P1769 | |
.annotate 'line', 702 | |
new $P1743, "Undef" | |
set $P1744, $P1743 | |
.lex "$parent", $P1744 | |
.annotate 'line', 703 | |
$P1745 = root_new ['parrot';'Hash'] | |
set $P1746, $P1745 | |
.lex "%meths", $P1746 | |
.annotate 'line', 704 | |
new $P1747, "Undef" | |
set $P1748, $P1747 | |
.lex "$dispatcher", $P1748 | |
.annotate 'line', 702 | |
find_lex $P1749, "$j" | |
unless_null $P1749, vivify_667 | |
new $P1749, "Undef" | |
vivify_667: | |
set $I1750, $P1749 | |
find_lex $P1751, "self" | |
find_lex $P1752, "$?CLASS" | |
getattribute $P1753, $P1751, $P1752, "@!mro" | |
unless_null $P1753, vivify_668 | |
$P1753 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_668: | |
set $P1754, $P1753[$I1750] | |
unless_null $P1754, vivify_669 | |
new $P1754, "Undef" | |
vivify_669: | |
store_lex "$parent", $P1754 | |
.annotate 'line', 703 | |
find_lex $P1755, "$parent" | |
unless_null $P1755, vivify_670 | |
new $P1755, "Undef" | |
vivify_670: | |
get_how $P1756, $P1755 | |
find_lex $P1757, "$parent" | |
unless_null $P1757, vivify_671 | |
new $P1757, "Undef" | |
vivify_671: | |
$P1758 = $P1756."method_table"($P1757) | |
store_lex "%meths", $P1758 | |
.annotate 'line', 704 | |
find_lex $P1759, "$name" | |
unless_null $P1759, vivify_672 | |
new $P1759, "Undef" | |
vivify_672: | |
find_lex $P1760, "%meths" | |
unless_null $P1760, vivify_673 | |
$P1760 = root_new ['parrot';'Hash'] | |
vivify_673: | |
set $P1761, $P1760[$P1759] | |
unless_null $P1761, vivify_674 | |
new $P1761, "Undef" | |
vivify_674: | |
store_lex "$dispatcher", $P1761 | |
.annotate 'line', 705 | |
find_lex $P1763, "$dispatcher" | |
unless_null $P1763, vivify_675 | |
new $P1763, "Undef" | |
vivify_675: | |
defined $I1764, $P1763 | |
unless $I1764, if_1762_end | |
.annotate 'line', 708 | |
find_lex $P1766, "$dispatcher" | |
unless_null $P1766, vivify_676 | |
new $P1766, "Undef" | |
vivify_676: | |
is_dispatcher $I1767, $P1766 | |
if $I1767, if_1765 | |
.annotate 'line', 721 | |
new $P1796, 'String' | |
set $P1796, "Could not find a proto for multi " | |
find_lex $P1797, "$name" | |
unless_null $P1797, vivify_677 | |
new $P1797, "Undef" | |
vivify_677: | |
concat $P1798, $P1796, $P1797 | |
concat $P1799, $P1798, " (it may exist, but an only is hiding it if so)" | |
die $P1799 | |
.annotate 'line', 720 | |
goto if_1765_end | |
if_1765: | |
.annotate 'line', 708 | |
.const 'Sub' $P1769 = "109_1307988395.99251" | |
capture_lex $P1769 | |
$P1769() | |
if_1765_end: | |
if_1762_end: | |
.annotate 'line', 724 | |
find_lex $P1800, "$j" | |
unless_null $P1800, vivify_691 | |
new $P1800, "Undef" | |
vivify_691: | |
add $P1801, $P1800, 1 | |
store_lex "$j", $P1801 | |
.annotate 'line', 701 | |
.return ($P1801) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1768" :anon :subid("109_1307988395.99251") :outer("108_1307988395.99251") | |
.annotate 'line', 710 | |
$P1770 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1771, $P1770 | |
.lex "@new_dispatchees", $P1771 | |
.annotate 'line', 712 | |
new $P1772, "Undef" | |
set $P1773, $P1772 | |
.lex "$new_disp", $P1773 | |
.annotate 'line', 713 | |
new $P1774, "Undef" | |
set $P1775, $P1774 | |
.lex "$clone_callback", $P1775 | |
.annotate 'line', 708 | |
find_lex $P1776, "@new_dispatchees" | |
unless_null $P1776, vivify_678 | |
$P1776 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_678: | |
.annotate 'line', 711 | |
find_lex $P1777, "$code" | |
unless_null $P1777, vivify_679 | |
new $P1777, "Undef" | |
vivify_679: | |
find_lex $P1778, "@new_dispatchees" | |
unless_null $P1778, vivify_680 | |
$P1778 = root_new ['parrot';'ResizablePMCArray'] | |
store_lex "@new_dispatchees", $P1778 | |
vivify_680: | |
set $P1778[0], $P1777 | |
.annotate 'line', 712 | |
find_lex $P1779, "$dispatcher" | |
unless_null $P1779, vivify_681 | |
new $P1779, "Undef" | |
vivify_681: | |
find_lex $P1780, "@new_dispatchees" | |
unless_null $P1780, vivify_682 | |
$P1780 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_682: | |
create_dispatch_and_add_candidates $P1781, $P1779, $P1780 | |
store_lex "$new_disp", $P1781 | |
.annotate 'line', 713 | |
find_lex $P1782, "$dispatcher" | |
unless_null $P1782, vivify_683 | |
new $P1782, "Undef" | |
vivify_683: | |
getprop $P1783, "CLONE_CALLBACK", $P1782 | |
store_lex "$clone_callback", $P1783 | |
.annotate 'line', 714 | |
find_lex $P1785, "$clone_callback" | |
unless_null $P1785, vivify_684 | |
new $P1785, "Undef" | |
vivify_684: | |
defined $I1786, $P1785 | |
unless $I1786, if_1784_end | |
.annotate 'line', 715 | |
find_lex $P1787, "$clone_callback" | |
unless_null $P1787, vivify_685 | |
new $P1787, "Undef" | |
vivify_685: | |
find_lex $P1788, "$dispatcher" | |
unless_null $P1788, vivify_686 | |
new $P1788, "Undef" | |
vivify_686: | |
find_lex $P1789, "$new_disp" | |
unless_null $P1789, vivify_687 | |
new $P1789, "Undef" | |
vivify_687: | |
$P1787($P1788, $P1789) | |
if_1784_end: | |
.annotate 'line', 717 | |
find_lex $P1790, "$new_disp" | |
unless_null $P1790, vivify_688 | |
new $P1790, "Undef" | |
vivify_688: | |
find_lex $P1791, "$name" | |
unless_null $P1791, vivify_689 | |
new $P1791, "Undef" | |
vivify_689: | |
find_lex $P1792, "self" | |
find_lex $P1793, "$?CLASS" | |
getattribute $P1794, $P1792, $P1793, "%!methods" | |
unless_null $P1794, vivify_690 | |
$P1794 = root_new ['parrot';'Hash'] | |
setattribute $P1792, $P1793, "%!methods", $P1794 | |
vivify_690: | |
set $P1794[$P1791], $P1790 | |
.annotate 'line', 718 | |
new $P1795, "Integer" | |
assign $P1795, 1 | |
store_lex "$found", $P1795 | |
.annotate 'line', 708 | |
.return ($P1795) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "publish_type_cache" :anon :subid("110_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1820 | |
.param pmc param_1821 | |
.annotate 'line', 823 | |
.const 'Sub' $P1847 = "112_1307988395.99251" | |
capture_lex $P1847 | |
.const 'Sub' $P1832 = "111_1307988395.99251" | |
capture_lex $P1832 | |
.lex "self", param_1820 | |
.lex "$obj", param_1821 | |
.annotate 'line', 824 | |
$P1822 = root_new ['parrot';'ResizablePMCArray'] | |
set $P1823, $P1822 | |
.lex "@tc", $P1823 | |
.annotate 'line', 823 | |
find_lex $P1824, "@tc" | |
unless_null $P1824, vivify_699 | |
$P1824 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_699: | |
.annotate 'line', 825 | |
find_lex $P1826, "self" | |
find_lex $P1827, "$?CLASS" | |
getattribute $P1828, $P1826, $P1827, "@!mro" | |
unless_null $P1828, vivify_700 | |
$P1828 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_700: | |
defined $I1829, $P1828 | |
unless $I1829, for_undef_701 | |
iter $P1825, $P1828 | |
new $P1838, 'ExceptionHandler' | |
set_label $P1838, loop1837_handler | |
$P1838."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1838 | |
loop1837_test: | |
unless $P1825, loop1837_done | |
shift $P1830, $P1825 | |
loop1837_redo: | |
.const 'Sub' $P1832 = "111_1307988395.99251" | |
capture_lex $P1832 | |
$P1832($P1830) | |
loop1837_next: | |
goto loop1837_test | |
loop1837_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1839, exception, 'type' | |
eq $P1839, .CONTROL_LOOP_NEXT, loop1837_next | |
eq $P1839, .CONTROL_LOOP_REDO, loop1837_redo | |
loop1837_done: | |
pop_eh | |
for_undef_701: | |
.annotate 'line', 826 | |
find_lex $P1841, "self" | |
find_lex $P1842, "$?CLASS" | |
getattribute $P1843, $P1841, $P1842, "@!done" | |
unless_null $P1843, vivify_704 | |
$P1843 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_704: | |
defined $I1844, $P1843 | |
unless $I1844, for_undef_705 | |
iter $P1840, $P1843 | |
new $P1853, 'ExceptionHandler' | |
set_label $P1853, loop1852_handler | |
$P1853."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1853 | |
loop1852_test: | |
unless $P1840, loop1852_done | |
shift $P1845, $P1840 | |
loop1852_redo: | |
.const 'Sub' $P1847 = "112_1307988395.99251" | |
capture_lex $P1847 | |
$P1847($P1845) | |
loop1852_next: | |
goto loop1852_test | |
loop1852_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1854, exception, 'type' | |
eq $P1854, .CONTROL_LOOP_NEXT, loop1852_next | |
eq $P1854, .CONTROL_LOOP_REDO, loop1852_redo | |
loop1852_done: | |
pop_eh | |
for_undef_705: | |
.annotate 'line', 827 | |
find_lex $P1855, "$obj" | |
unless_null $P1855, vivify_708 | |
new $P1855, "Undef" | |
vivify_708: | |
find_lex $P1856, "@tc" | |
unless_null $P1856, vivify_709 | |
$P1856 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_709: | |
publish_type_check_cache $P1855, $P1856 | |
.annotate 'line', 823 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1831" :anon :subid("111_1307988395.99251") :outer("110_1307988395.99251") | |
.param pmc param_1833 | |
.annotate 'line', 825 | |
.lex "$_", param_1833 | |
find_lex $P1834, "@tc" | |
unless_null $P1834, vivify_702 | |
$P1834 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_702: | |
find_lex $P1835, "$_" | |
unless_null $P1835, vivify_703 | |
new $P1835, "Undef" | |
vivify_703: | |
$P1836 = $P1834."push"($P1835) | |
.return ($P1836) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1846" :anon :subid("112_1307988395.99251") :outer("110_1307988395.99251") | |
.param pmc param_1848 | |
.annotate 'line', 826 | |
.lex "$_", param_1848 | |
find_lex $P1849, "@tc" | |
unless_null $P1849, vivify_706 | |
$P1849 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_706: | |
find_lex $P1850, "$_" | |
unless_null $P1850, vivify_707 | |
new $P1850, "Undef" | |
vivify_707: | |
$P1851 = $P1849."push"($P1850) | |
.return ($P1851) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "publish_method_cache" :anon :subid("113_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1858 | |
.param pmc param_1859 | |
.annotate 'line', 830 | |
.const 'Sub' $P1870 = "114_1307988395.99251" | |
capture_lex $P1870 | |
.lex "self", param_1858 | |
.lex "$obj", param_1859 | |
.annotate 'line', 833 | |
$P1860 = root_new ['parrot';'Hash'] | |
set $P1861, $P1860 | |
.lex "%cache", $P1861 | |
.annotate 'line', 830 | |
find_lex $P1862, "%cache" | |
unless_null $P1862, vivify_710 | |
$P1862 = root_new ['parrot';'Hash'] | |
vivify_710: | |
.annotate 'line', 834 | |
find_lex $P1864, "self" | |
find_lex $P1865, "$?CLASS" | |
getattribute $P1866, $P1864, $P1865, "@!mro" | |
unless_null $P1866, vivify_711 | |
$P1866 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_711: | |
defined $I1867, $P1866 | |
unless $I1867, for_undef_712 | |
iter $P1863, $P1866 | |
new $P1900, 'ExceptionHandler' | |
set_label $P1900, loop1899_handler | |
$P1900."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1900 | |
loop1899_test: | |
unless $P1863, loop1899_done | |
shift $P1868, $P1863 | |
loop1899_redo: | |
.const 'Sub' $P1870 = "114_1307988395.99251" | |
capture_lex $P1870 | |
$P1870($P1868) | |
loop1899_next: | |
goto loop1899_test | |
loop1899_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1901, exception, 'type' | |
eq $P1901, .CONTROL_LOOP_NEXT, loop1899_next | |
eq $P1901, .CONTROL_LOOP_REDO, loop1899_redo | |
loop1899_done: | |
pop_eh | |
for_undef_712: | |
.annotate 'line', 842 | |
find_lex $P1902, "$obj" | |
unless_null $P1902, vivify_723 | |
new $P1902, "Undef" | |
vivify_723: | |
find_lex $P1903, "%cache" | |
unless_null $P1903, vivify_724 | |
$P1903 = root_new ['parrot';'Hash'] | |
vivify_724: | |
publish_method_cache $P1902, $P1903 | |
.annotate 'line', 830 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1869" :anon :subid("114_1307988395.99251") :outer("113_1307988395.99251") | |
.param pmc param_1873 | |
.annotate 'line', 834 | |
.const 'Sub' $P1883 = "115_1307988395.99251" | |
capture_lex $P1883 | |
.annotate 'line', 835 | |
$P1871 = root_new ['parrot';'Hash'] | |
set $P1872, $P1871 | |
.lex "%methods", $P1872 | |
.lex "$_", param_1873 | |
find_lex $P1874, "$_" | |
unless_null $P1874, vivify_713 | |
new $P1874, "Undef" | |
vivify_713: | |
get_how $P1875, $P1874 | |
find_lex $P1876, "$_" | |
unless_null $P1876, vivify_714 | |
new $P1876, "Undef" | |
vivify_714: | |
$P1877 = $P1875."method_table"($P1876) | |
store_lex "%methods", $P1877 | |
.annotate 'line', 836 | |
find_lex $P1879, "%methods" | |
unless_null $P1879, vivify_715 | |
$P1879 = root_new ['parrot';'Hash'] | |
vivify_715: | |
defined $I1880, $P1879 | |
unless $I1880, for_undef_716 | |
iter $P1878, $P1879 | |
new $P1897, 'ExceptionHandler' | |
set_label $P1897, loop1896_handler | |
$P1897."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1897 | |
loop1896_test: | |
unless $P1878, loop1896_done | |
shift $P1881, $P1878 | |
loop1896_redo: | |
.const 'Sub' $P1883 = "115_1307988395.99251" | |
capture_lex $P1883 | |
$P1883($P1881) | |
loop1896_next: | |
goto loop1896_test | |
loop1896_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1898, exception, 'type' | |
eq $P1898, .CONTROL_LOOP_NEXT, loop1896_next | |
eq $P1898, .CONTROL_LOOP_REDO, loop1896_redo | |
loop1896_done: | |
pop_eh | |
for_undef_716: | |
.annotate 'line', 834 | |
.return ($P1878) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1882" :anon :subid("115_1307988395.99251") :outer("114_1307988395.99251") | |
.param pmc param_1884 | |
.annotate 'line', 836 | |
.lex "$_", param_1884 | |
.annotate 'line', 837 | |
find_lex $P1887, "$_" | |
unless_null $P1887, vivify_717 | |
new $P1887, "Undef" | |
vivify_717: | |
$P1888 = $P1887."key"() | |
find_lex $P1889, "%cache" | |
unless_null $P1889, vivify_718 | |
$P1889 = root_new ['parrot';'Hash'] | |
vivify_718: | |
set $P1890, $P1889[$P1888] | |
unless_null $P1890, vivify_719 | |
new $P1890, "Undef" | |
vivify_719: | |
unless $P1890, unless_1886 | |
set $P1885, $P1890 | |
goto unless_1886_end | |
unless_1886: | |
.annotate 'line', 838 | |
find_lex $P1891, "$_" | |
unless_null $P1891, vivify_720 | |
new $P1891, "Undef" | |
vivify_720: | |
$P1892 = $P1891."value"() | |
find_lex $P1893, "$_" | |
unless_null $P1893, vivify_721 | |
new $P1893, "Undef" | |
vivify_721: | |
$P1894 = $P1893."key"() | |
find_lex $P1895, "%cache" | |
unless_null $P1895, vivify_722 | |
$P1895 = root_new ['parrot';'Hash'] | |
store_lex "%cache", $P1895 | |
vivify_722: | |
set $P1895[$P1894], $P1892 | |
.annotate 'line', 837 | |
set $P1885, $P1892 | |
unless_1886_end: | |
.annotate 'line', 836 | |
.return ($P1885) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "publish_parrot_vtable_mapping" :anon :subid("116_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1905 | |
.param pmc param_1906 | |
.annotate 'line', 845 | |
.const 'Sub' $P1917 = "117_1307988395.99251" | |
capture_lex $P1917 | |
.lex "self", param_1905 | |
.lex "$obj", param_1906 | |
.annotate 'line', 846 | |
$P1907 = root_new ['parrot';'Hash'] | |
set $P1908, $P1907 | |
.lex "%mapping", $P1908 | |
.annotate 'line', 845 | |
find_lex $P1909, "%mapping" | |
unless_null $P1909, vivify_725 | |
$P1909 = root_new ['parrot';'Hash'] | |
vivify_725: | |
.annotate 'line', 847 | |
find_lex $P1911, "self" | |
find_lex $P1912, "$?CLASS" | |
getattribute $P1913, $P1911, $P1912, "@!mro" | |
unless_null $P1913, vivify_726 | |
$P1913 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_726: | |
defined $I1914, $P1913 | |
unless $I1914, for_undef_727 | |
iter $P1910, $P1913 | |
new $P1947, 'ExceptionHandler' | |
set_label $P1947, loop1946_handler | |
$P1947."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1947 | |
loop1946_test: | |
unless $P1910, loop1946_done | |
shift $P1915, $P1910 | |
loop1946_redo: | |
.const 'Sub' $P1917 = "117_1307988395.99251" | |
capture_lex $P1917 | |
$P1917($P1915) | |
loop1946_next: | |
goto loop1946_test | |
loop1946_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1948, exception, 'type' | |
eq $P1948, .CONTROL_LOOP_NEXT, loop1946_next | |
eq $P1948, .CONTROL_LOOP_REDO, loop1946_redo | |
loop1946_done: | |
pop_eh | |
for_undef_727: | |
.annotate 'line', 855 | |
find_lex $P1951, "%mapping" | |
unless_null $P1951, vivify_738 | |
$P1951 = root_new ['parrot';'Hash'] | |
vivify_738: | |
set $N1952, $P1951 | |
if $N1952, if_1950 | |
new $P1949, 'Float' | |
set $P1949, $N1952 | |
goto if_1950_end | |
if_1950: | |
.annotate 'line', 856 | |
find_lex $P1953, "$obj" | |
unless_null $P1953, vivify_739 | |
new $P1953, "Undef" | |
vivify_739: | |
find_lex $P1954, "%mapping" | |
unless_null $P1954, vivify_740 | |
$P1954 = root_new ['parrot';'Hash'] | |
vivify_740: | |
stable_publish_vtable_mapping $P1953, $P1954 | |
if_1950_end: | |
.annotate 'line', 845 | |
.return ($P1949) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1916" :anon :subid("117_1307988395.99251") :outer("116_1307988395.99251") | |
.param pmc param_1920 | |
.annotate 'line', 847 | |
.const 'Sub' $P1930 = "118_1307988395.99251" | |
capture_lex $P1930 | |
.annotate 'line', 848 | |
$P1918 = root_new ['parrot';'Hash'] | |
set $P1919, $P1918 | |
.lex "%map", $P1919 | |
.lex "$_", param_1920 | |
find_lex $P1921, "$_" | |
unless_null $P1921, vivify_728 | |
new $P1921, "Undef" | |
vivify_728: | |
get_how $P1922, $P1921 | |
find_lex $P1923, "$_" | |
unless_null $P1923, vivify_729 | |
new $P1923, "Undef" | |
vivify_729: | |
$P1924 = $P1922."parrot_vtable_mappings"($P1923, 1 :named("local")) | |
store_lex "%map", $P1924 | |
.annotate 'line', 849 | |
find_lex $P1926, "%map" | |
unless_null $P1926, vivify_730 | |
$P1926 = root_new ['parrot';'Hash'] | |
vivify_730: | |
defined $I1927, $P1926 | |
unless $I1927, for_undef_731 | |
iter $P1925, $P1926 | |
new $P1944, 'ExceptionHandler' | |
set_label $P1944, loop1943_handler | |
$P1944."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1944 | |
loop1943_test: | |
unless $P1925, loop1943_done | |
shift $P1928, $P1925 | |
loop1943_redo: | |
.const 'Sub' $P1930 = "118_1307988395.99251" | |
capture_lex $P1930 | |
$P1930($P1928) | |
loop1943_next: | |
goto loop1943_test | |
loop1943_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1945, exception, 'type' | |
eq $P1945, .CONTROL_LOOP_NEXT, loop1943_next | |
eq $P1945, .CONTROL_LOOP_REDO, loop1943_redo | |
loop1943_done: | |
pop_eh | |
for_undef_731: | |
.annotate 'line', 847 | |
.return ($P1925) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1929" :anon :subid("118_1307988395.99251") :outer("117_1307988395.99251") | |
.param pmc param_1931 | |
.annotate 'line', 849 | |
.lex "$_", param_1931 | |
.annotate 'line', 850 | |
find_lex $P1934, "$_" | |
unless_null $P1934, vivify_732 | |
new $P1934, "Undef" | |
vivify_732: | |
$P1935 = $P1934."key"() | |
find_lex $P1936, "%mapping" | |
unless_null $P1936, vivify_733 | |
$P1936 = root_new ['parrot';'Hash'] | |
vivify_733: | |
set $P1937, $P1936[$P1935] | |
unless_null $P1937, vivify_734 | |
new $P1937, "Undef" | |
vivify_734: | |
unless $P1937, unless_1933 | |
set $P1932, $P1937 | |
goto unless_1933_end | |
unless_1933: | |
.annotate 'line', 851 | |
find_lex $P1938, "$_" | |
unless_null $P1938, vivify_735 | |
new $P1938, "Undef" | |
vivify_735: | |
$P1939 = $P1938."value"() | |
find_lex $P1940, "$_" | |
unless_null $P1940, vivify_736 | |
new $P1940, "Undef" | |
vivify_736: | |
$P1941 = $P1940."key"() | |
find_lex $P1942, "%mapping" | |
unless_null $P1942, vivify_737 | |
$P1942 = root_new ['parrot';'Hash'] | |
store_lex "%mapping", $P1942 | |
vivify_737: | |
set $P1942[$P1941], $P1939 | |
.annotate 'line', 850 | |
set $P1932, $P1939 | |
unless_1933_end: | |
.annotate 'line', 849 | |
.return ($P1932) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "publish_parrot_vtablee_handler_mapping" :anon :subid("119_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_1956 | |
.param pmc param_1957 | |
.annotate 'line', 860 | |
.const 'Sub' $P1968 = "120_1307988395.99251" | |
capture_lex $P1968 | |
.lex "self", param_1956 | |
.lex "$obj", param_1957 | |
.annotate 'line', 861 | |
$P1958 = root_new ['parrot';'Hash'] | |
set $P1959, $P1958 | |
.lex "%mapping", $P1959 | |
.annotate 'line', 860 | |
find_lex $P1960, "%mapping" | |
unless_null $P1960, vivify_741 | |
$P1960 = root_new ['parrot';'Hash'] | |
vivify_741: | |
.annotate 'line', 862 | |
find_lex $P1962, "self" | |
find_lex $P1963, "$?CLASS" | |
getattribute $P1964, $P1962, $P1963, "@!mro" | |
unless_null $P1964, vivify_742 | |
$P1964 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_742: | |
defined $I1965, $P1964 | |
unless $I1965, for_undef_743 | |
iter $P1961, $P1964 | |
new $P1998, 'ExceptionHandler' | |
set_label $P1998, loop1997_handler | |
$P1998."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1998 | |
loop1997_test: | |
unless $P1961, loop1997_done | |
shift $P1966, $P1961 | |
loop1997_redo: | |
.const 'Sub' $P1968 = "120_1307988395.99251" | |
capture_lex $P1968 | |
$P1968($P1966) | |
loop1997_next: | |
goto loop1997_test | |
loop1997_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1999, exception, 'type' | |
eq $P1999, .CONTROL_LOOP_NEXT, loop1997_next | |
eq $P1999, .CONTROL_LOOP_REDO, loop1997_redo | |
loop1997_done: | |
pop_eh | |
for_undef_743: | |
.annotate 'line', 870 | |
find_lex $P2002, "%mapping" | |
unless_null $P2002, vivify_754 | |
$P2002 = root_new ['parrot';'Hash'] | |
vivify_754: | |
set $N2003, $P2002 | |
if $N2003, if_2001 | |
new $P2000, 'Float' | |
set $P2000, $N2003 | |
goto if_2001_end | |
if_2001: | |
.annotate 'line', 871 | |
find_lex $P2004, "$obj" | |
unless_null $P2004, vivify_755 | |
new $P2004, "Undef" | |
vivify_755: | |
find_lex $P2005, "%mapping" | |
unless_null $P2005, vivify_756 | |
$P2005 = root_new ['parrot';'Hash'] | |
vivify_756: | |
stable_publish_vtable_handler_mapping $P2004, $P2005 | |
if_2001_end: | |
.annotate 'line', 860 | |
.return ($P2000) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block1967" :anon :subid("120_1307988395.99251") :outer("119_1307988395.99251") | |
.param pmc param_1971 | |
.annotate 'line', 862 | |
.const 'Sub' $P1981 = "121_1307988395.99251" | |
capture_lex $P1981 | |
.annotate 'line', 863 | |
$P1969 = root_new ['parrot';'Hash'] | |
set $P1970, $P1969 | |
.lex "%map", $P1970 | |
.lex "$_", param_1971 | |
find_lex $P1972, "$_" | |
unless_null $P1972, vivify_744 | |
new $P1972, "Undef" | |
vivify_744: | |
get_how $P1973, $P1972 | |
find_lex $P1974, "$_" | |
unless_null $P1974, vivify_745 | |
new $P1974, "Undef" | |
vivify_745: | |
$P1975 = $P1973."parrot_vtable_handler_mappings"($P1974, 1 :named("local")) | |
store_lex "%map", $P1975 | |
.annotate 'line', 864 | |
find_lex $P1977, "%map" | |
unless_null $P1977, vivify_746 | |
$P1977 = root_new ['parrot';'Hash'] | |
vivify_746: | |
defined $I1978, $P1977 | |
unless $I1978, for_undef_747 | |
iter $P1976, $P1977 | |
new $P1995, 'ExceptionHandler' | |
set_label $P1995, loop1994_handler | |
$P1995."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P1995 | |
loop1994_test: | |
unless $P1976, loop1994_done | |
shift $P1979, $P1976 | |
loop1994_redo: | |
.const 'Sub' $P1981 = "121_1307988395.99251" | |
capture_lex $P1981 | |
$P1981($P1979) | |
loop1994_next: | |
goto loop1994_test | |
loop1994_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P1996, exception, 'type' | |
eq $P1996, .CONTROL_LOOP_NEXT, loop1994_next | |
eq $P1996, .CONTROL_LOOP_REDO, loop1994_redo | |
loop1994_done: | |
pop_eh | |
for_undef_747: | |
.annotate 'line', 862 | |
.return ($P1976) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block1980" :anon :subid("121_1307988395.99251") :outer("120_1307988395.99251") | |
.param pmc param_1982 | |
.annotate 'line', 864 | |
.lex "$_", param_1982 | |
.annotate 'line', 865 | |
find_lex $P1985, "$_" | |
unless_null $P1985, vivify_748 | |
new $P1985, "Undef" | |
vivify_748: | |
$P1986 = $P1985."key"() | |
find_lex $P1987, "%mapping" | |
unless_null $P1987, vivify_749 | |
$P1987 = root_new ['parrot';'Hash'] | |
vivify_749: | |
set $P1988, $P1987[$P1986] | |
unless_null $P1988, vivify_750 | |
new $P1988, "Undef" | |
vivify_750: | |
unless $P1988, unless_1984 | |
set $P1983, $P1988 | |
goto unless_1984_end | |
unless_1984: | |
.annotate 'line', 866 | |
find_lex $P1989, "$_" | |
unless_null $P1989, vivify_751 | |
new $P1989, "Undef" | |
vivify_751: | |
$P1990 = $P1989."value"() | |
find_lex $P1991, "$_" | |
unless_null $P1991, vivify_752 | |
new $P1991, "Undef" | |
vivify_752: | |
$P1992 = $P1991."key"() | |
find_lex $P1993, "%mapping" | |
unless_null $P1993, vivify_753 | |
$P1993 = root_new ['parrot';'Hash'] | |
store_lex "%mapping", $P1993 | |
vivify_753: | |
set $P1993[$P1992], $P1990 | |
.annotate 'line', 865 | |
set $P1983, $P1990 | |
unless_1984_end: | |
.annotate 'line', 864 | |
.return ($P1983) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "parents" :anon :subid("122_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2007 | |
.param pmc param_2008 | |
.param pmc param_2009 :optional :named("local") | |
.param int has_param_2009 :opt_flag | |
.annotate 'line', 878 | |
.lex "self", param_2007 | |
.lex "$obj", param_2008 | |
if has_param_2009, optparam_757 | |
new $P2010, "Undef" | |
set param_2009, $P2010 | |
optparam_757: | |
.lex "$local", param_2009 | |
.annotate 'line', 879 | |
find_lex $P2013, "$local" | |
unless_null $P2013, vivify_758 | |
new $P2013, "Undef" | |
vivify_758: | |
if $P2013, if_2012 | |
find_lex $P2017, "self" | |
find_lex $P2018, "$?CLASS" | |
getattribute $P2019, $P2017, $P2018, "@!mro" | |
unless_null $P2019, vivify_759 | |
$P2019 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_759: | |
set $P2011, $P2019 | |
goto if_2012_end | |
if_2012: | |
find_lex $P2014, "self" | |
find_lex $P2015, "$?CLASS" | |
getattribute $P2016, $P2014, $P2015, "@!parents" | |
unless_null $P2016, vivify_760 | |
$P2016 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_760: | |
set $P2011, $P2016 | |
if_2012_end: | |
.annotate 'line', 878 | |
.return ($P2011) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "roles" :anon :subid("123_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2021 | |
.param pmc param_2022 | |
.param pmc param_2023 :named("local") | |
.annotate 'line', 882 | |
.lex "self", param_2021 | |
.lex "$obj", param_2022 | |
.lex "$local", param_2023 | |
find_lex $P2024, "self" | |
find_lex $P2025, "$?CLASS" | |
getattribute $P2026, $P2024, $P2025, "@!roles" | |
unless_null $P2026, vivify_761 | |
$P2026 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_761: | |
.return ($P2026) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "methods" :anon :subid("124_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2028 | |
.param pmc param_2029 | |
.param pmc param_2030 :named("local") | |
.annotate 'line', 886 | |
.const 'Sub' $P2041 = "125_1307988395.99251" | |
capture_lex $P2041 | |
.lex "self", param_2028 | |
.lex "$obj", param_2029 | |
.lex "$local", param_2030 | |
.annotate 'line', 887 | |
$P2031 = root_new ['parrot';'ResizablePMCArray'] | |
set $P2032, $P2031 | |
.lex "@meths", $P2032 | |
.annotate 'line', 886 | |
find_lex $P2033, "@meths" | |
unless_null $P2033, vivify_762 | |
$P2033 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_762: | |
.annotate 'line', 888 | |
find_lex $P2035, "self" | |
find_lex $P2036, "$?CLASS" | |
getattribute $P2037, $P2035, $P2036, "%!methods" | |
unless_null $P2037, vivify_763 | |
$P2037 = root_new ['parrot';'Hash'] | |
vivify_763: | |
defined $I2038, $P2037 | |
unless $I2038, for_undef_764 | |
iter $P2034, $P2037 | |
new $P2048, 'ExceptionHandler' | |
set_label $P2048, loop2047_handler | |
$P2048."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2048 | |
loop2047_test: | |
unless $P2034, loop2047_done | |
shift $P2039, $P2034 | |
loop2047_redo: | |
.const 'Sub' $P2041 = "125_1307988395.99251" | |
capture_lex $P2041 | |
$P2041($P2039) | |
loop2047_next: | |
goto loop2047_test | |
loop2047_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2049, exception, 'type' | |
eq $P2049, .CONTROL_LOOP_NEXT, loop2047_next | |
eq $P2049, .CONTROL_LOOP_REDO, loop2047_redo | |
loop2047_done: | |
pop_eh | |
for_undef_764: | |
find_lex $P2050, "@meths" | |
unless_null $P2050, vivify_767 | |
$P2050 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_767: | |
.annotate 'line', 886 | |
.return ($P2050) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block2040" :anon :subid("125_1307988395.99251") :outer("124_1307988395.99251") | |
.param pmc param_2042 | |
.annotate 'line', 888 | |
.lex "$_", param_2042 | |
.annotate 'line', 889 | |
find_lex $P2043, "@meths" | |
unless_null $P2043, vivify_765 | |
$P2043 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_765: | |
find_lex $P2044, "$_" | |
unless_null $P2044, vivify_766 | |
new $P2044, "Undef" | |
vivify_766: | |
$P2045 = $P2044."value"() | |
$P2046 = $P2043."push"($P2045) | |
.annotate 'line', 888 | |
.return ($P2046) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "method_table" :anon :subid("126_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2052 | |
.param pmc param_2053 | |
.annotate 'line', 894 | |
.lex "self", param_2052 | |
.lex "$obj", param_2053 | |
find_lex $P2054, "self" | |
find_lex $P2055, "$?CLASS" | |
getattribute $P2056, $P2054, $P2055, "%!methods" | |
unless_null $P2056, vivify_768 | |
$P2056 = root_new ['parrot';'Hash'] | |
vivify_768: | |
.return ($P2056) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "name" :anon :subid("127_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2058 | |
.param pmc param_2059 | |
.annotate 'line', 898 | |
.lex "self", param_2058 | |
.lex "$obj", param_2059 | |
find_lex $P2060, "self" | |
find_lex $P2061, "$?CLASS" | |
getattribute $P2062, $P2060, $P2061, "$!name" | |
unless_null $P2062, vivify_769 | |
new $P2062, "Undef" | |
vivify_769: | |
.return ($P2062) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "attributes" :anon :subid("128_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2064 | |
.param pmc param_2065 | |
.param pmc param_2066 :named("local") | |
.annotate 'line', 902 | |
.const 'Sub' $P2077 = "129_1307988395.99251" | |
capture_lex $P2077 | |
.lex "self", param_2064 | |
.lex "$obj", param_2065 | |
.lex "$local", param_2066 | |
.annotate 'line', 903 | |
$P2067 = root_new ['parrot';'ResizablePMCArray'] | |
set $P2068, $P2067 | |
.lex "@attrs", $P2068 | |
.annotate 'line', 902 | |
find_lex $P2069, "@attrs" | |
unless_null $P2069, vivify_770 | |
$P2069 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_770: | |
.annotate 'line', 904 | |
find_lex $P2071, "self" | |
find_lex $P2072, "$?CLASS" | |
getattribute $P2073, $P2071, $P2072, "%!attributes" | |
unless_null $P2073, vivify_771 | |
$P2073 = root_new ['parrot';'Hash'] | |
vivify_771: | |
defined $I2074, $P2073 | |
unless $I2074, for_undef_772 | |
iter $P2070, $P2073 | |
new $P2084, 'ExceptionHandler' | |
set_label $P2084, loop2083_handler | |
$P2084."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2084 | |
loop2083_test: | |
unless $P2070, loop2083_done | |
shift $P2075, $P2070 | |
loop2083_redo: | |
.const 'Sub' $P2077 = "129_1307988395.99251" | |
capture_lex $P2077 | |
$P2077($P2075) | |
loop2083_next: | |
goto loop2083_test | |
loop2083_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2085, exception, 'type' | |
eq $P2085, .CONTROL_LOOP_NEXT, loop2083_next | |
eq $P2085, .CONTROL_LOOP_REDO, loop2083_redo | |
loop2083_done: | |
pop_eh | |
for_undef_772: | |
find_lex $P2086, "@attrs" | |
unless_null $P2086, vivify_775 | |
$P2086 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_775: | |
.annotate 'line', 902 | |
.return ($P2086) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "_block2076" :anon :subid("129_1307988395.99251") :outer("128_1307988395.99251") | |
.param pmc param_2078 | |
.annotate 'line', 904 | |
.lex "$_", param_2078 | |
.annotate 'line', 905 | |
find_lex $P2079, "@attrs" | |
unless_null $P2079, vivify_773 | |
$P2079 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_773: | |
find_lex $P2080, "$_" | |
unless_null $P2080, vivify_774 | |
new $P2080, "Undef" | |
vivify_774: | |
$P2081 = $P2080."value"() | |
$P2082 = $P2079."push"($P2081) | |
.annotate 'line', 904 | |
.return ($P2082) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "parrot_vtable_mappings" :anon :subid("130_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2088 | |
.param pmc param_2089 | |
.param pmc param_2090 :named("local") | |
.annotate 'line', 910 | |
.lex "self", param_2088 | |
.lex "$obj", param_2089 | |
.lex "$local", param_2090 | |
find_lex $P2091, "self" | |
find_lex $P2092, "$?CLASS" | |
getattribute $P2093, $P2091, $P2092, "%!parrot_vtable_mapping" | |
unless_null $P2093, vivify_776 | |
$P2093 = root_new ['parrot';'Hash'] | |
vivify_776: | |
.return ($P2093) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.sub "parrot_vtable_handler_mappings" :anon :subid("131_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2095 | |
.param pmc param_2096 | |
.param pmc param_2097 :named("local") | |
.annotate 'line', 914 | |
.lex "self", param_2095 | |
.lex "$obj", param_2096 | |
.lex "$local", param_2097 | |
find_lex $P2098, "self" | |
find_lex $P2099, "$?CLASS" | |
getattribute $P2100, $P2098, $P2099, "%!parrot_vtable_handler_mapping" | |
unless_null $P2100, vivify_777 | |
$P2100 = root_new ['parrot';'Hash'] | |
vivify_777: | |
.return ($P2100) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "isa" :anon :subid("132_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2104 | |
.param pmc param_2105 | |
.param pmc param_2106 | |
.annotate 'line', 922 | |
new $P2103, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P2103, control_2102 | |
push_eh $P2103 | |
.lex "self", param_2104 | |
.lex "$obj", param_2105 | |
.lex "$check", param_2106 | |
.annotate 'line', 923 | |
new $P2107, "Undef" | |
set $P2108, $P2107 | |
.lex "$check-class", $P2108 | |
.annotate 'line', 924 | |
new $P2109, "Undef" | |
set $P2110, $P2109 | |
.lex "$i", $P2110 | |
.annotate 'line', 923 | |
find_lex $P2111, "$check" | |
unless_null $P2111, vivify_778 | |
new $P2111, "Undef" | |
vivify_778: | |
get_what $P2112, $P2111 | |
store_lex "$check-class", $P2112 | |
.annotate 'line', 924 | |
find_lex $P2113, "self" | |
find_lex $P2114, "$?CLASS" | |
getattribute $P2115, $P2113, $P2114, "@!mro" | |
unless_null $P2115, vivify_779 | |
$P2115 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_779: | |
set $N2116, $P2115 | |
new $P2117, 'Float' | |
set $P2117, $N2116 | |
store_lex "$i", $P2117 | |
.annotate 'line', 925 | |
new $P2135, 'ExceptionHandler' | |
set_label $P2135, loop2134_handler | |
$P2135."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2135 | |
loop2134_test: | |
find_lex $P2118, "$i" | |
unless_null $P2118, vivify_780 | |
new $P2118, "Undef" | |
vivify_780: | |
set $N2119, $P2118 | |
isgt $I2120, $N2119, 0.0 | |
unless $I2120, loop2134_done | |
loop2134_redo: | |
.annotate 'line', 926 | |
find_lex $P2121, "$i" | |
unless_null $P2121, vivify_781 | |
new $P2121, "Undef" | |
vivify_781: | |
sub $P2122, $P2121, 1 | |
store_lex "$i", $P2122 | |
.annotate 'line', 927 | |
find_lex $P2124, "$i" | |
unless_null $P2124, vivify_782 | |
new $P2124, "Undef" | |
vivify_782: | |
set $I2125, $P2124 | |
find_lex $P2126, "self" | |
find_lex $P2127, "$?CLASS" | |
getattribute $P2128, $P2126, $P2127, "@!mro" | |
unless_null $P2128, vivify_783 | |
$P2128 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_783: | |
set $P2129, $P2128[$I2125] | |
unless_null $P2129, vivify_784 | |
new $P2129, "Undef" | |
vivify_784: | |
find_lex $P2130, "$check-class" | |
unless_null $P2130, vivify_785 | |
new $P2130, "Undef" | |
vivify_785: | |
issame $I2131, $P2129, $P2130 | |
unless $I2131, if_2123_end | |
.annotate 'line', 928 | |
new $P2132, "Exception" | |
set $P2132['type'], .CONTROL_RETURN | |
new $P2133, "Integer" | |
assign $P2133, 1 | |
setattribute $P2132, 'payload', $P2133 | |
throw $P2132 | |
if_2123_end: | |
loop2134_next: | |
.annotate 'line', 925 | |
goto loop2134_test | |
loop2134_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2136, exception, 'type' | |
eq $P2136, .CONTROL_LOOP_NEXT, loop2134_next | |
eq $P2136, .CONTROL_LOOP_REDO, loop2134_redo | |
loop2134_done: | |
pop_eh | |
.annotate 'line', 931 | |
new $P2137, "Exception" | |
set $P2137['type'], .CONTROL_RETURN | |
new $P2138, "Integer" | |
assign $P2138, 0 | |
setattribute $P2137, 'payload', $P2138 | |
throw $P2137 | |
.annotate 'line', 922 | |
.return () | |
control_2102: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2139, exception, "payload" | |
.return ($P2139) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "does" :anon :subid("133_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2143 | |
.param pmc param_2144 | |
.param pmc param_2145 | |
.annotate 'line', 934 | |
new $P2142, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P2142, control_2141 | |
push_eh $P2142 | |
.lex "self", param_2143 | |
.lex "$obj", param_2144 | |
.lex "$check", param_2145 | |
.annotate 'line', 935 | |
new $P2146, "Undef" | |
set $P2147, $P2146 | |
.lex "$i", $P2147 | |
find_lex $P2148, "self" | |
find_lex $P2149, "$?CLASS" | |
getattribute $P2150, $P2148, $P2149, "@!done" | |
unless_null $P2150, vivify_786 | |
$P2150 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_786: | |
set $N2151, $P2150 | |
new $P2152, 'Float' | |
set $P2152, $N2151 | |
store_lex "$i", $P2152 | |
.annotate 'line', 936 | |
new $P2170, 'ExceptionHandler' | |
set_label $P2170, loop2169_handler | |
$P2170."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2170 | |
loop2169_test: | |
find_lex $P2153, "$i" | |
unless_null $P2153, vivify_787 | |
new $P2153, "Undef" | |
vivify_787: | |
set $N2154, $P2153 | |
isgt $I2155, $N2154, 0.0 | |
unless $I2155, loop2169_done | |
loop2169_redo: | |
.annotate 'line', 937 | |
find_lex $P2156, "$i" | |
unless_null $P2156, vivify_788 | |
new $P2156, "Undef" | |
vivify_788: | |
sub $P2157, $P2156, 1 | |
store_lex "$i", $P2157 | |
.annotate 'line', 938 | |
find_lex $P2159, "$i" | |
unless_null $P2159, vivify_789 | |
new $P2159, "Undef" | |
vivify_789: | |
set $I2160, $P2159 | |
find_lex $P2161, "self" | |
find_lex $P2162, "$?CLASS" | |
getattribute $P2163, $P2161, $P2162, "@!done" | |
unless_null $P2163, vivify_790 | |
$P2163 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_790: | |
set $P2164, $P2163[$I2160] | |
unless_null $P2164, vivify_791 | |
new $P2164, "Undef" | |
vivify_791: | |
find_lex $P2165, "$check" | |
unless_null $P2165, vivify_792 | |
new $P2165, "Undef" | |
vivify_792: | |
issame $I2166, $P2164, $P2165 | |
unless $I2166, if_2158_end | |
.annotate 'line', 939 | |
new $P2167, "Exception" | |
set $P2167['type'], .CONTROL_RETURN | |
new $P2168, "Integer" | |
assign $P2168, 1 | |
setattribute $P2167, 'payload', $P2168 | |
throw $P2167 | |
if_2158_end: | |
loop2169_next: | |
.annotate 'line', 936 | |
goto loop2169_test | |
loop2169_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2171, exception, 'type' | |
eq $P2171, .CONTROL_LOOP_NEXT, loop2169_next | |
eq $P2171, .CONTROL_LOOP_REDO, loop2169_redo | |
loop2169_done: | |
pop_eh | |
.annotate 'line', 942 | |
new $P2172, "Exception" | |
set $P2172['type'], .CONTROL_RETURN | |
new $P2173, "Integer" | |
assign $P2173, 0 | |
setattribute $P2172, 'payload', $P2173 | |
throw $P2172 | |
.annotate 'line', 934 | |
.return () | |
control_2141: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2174, exception, "payload" | |
.return ($P2174) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "can" :anon :subid("134_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2178 | |
.param pmc param_2179 | |
.param pmc param_2180 | |
.annotate 'line', 945 | |
.const 'Sub' $P2188 = "135_1307988395.99251" | |
capture_lex $P2188 | |
new $P2177, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P2177, control_2176 | |
push_eh $P2177 | |
.lex "self", param_2178 | |
.lex "$obj", param_2179 | |
.lex "$name", param_2180 | |
.annotate 'line', 946 | |
find_lex $P2182, "self" | |
find_lex $P2183, "$?CLASS" | |
getattribute $P2184, $P2182, $P2183, "@!mro" | |
unless_null $P2184, vivify_793 | |
$P2184 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_793: | |
defined $I2185, $P2184 | |
unless $I2185, for_undef_794 | |
iter $P2181, $P2184 | |
new $P2208, 'ExceptionHandler' | |
set_label $P2208, loop2207_handler | |
$P2208."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2208 | |
loop2207_test: | |
unless $P2181, loop2207_done | |
shift $P2186, $P2181 | |
loop2207_redo: | |
.const 'Sub' $P2188 = "135_1307988395.99251" | |
capture_lex $P2188 | |
$P2188($P2186) | |
loop2207_next: | |
goto loop2207_test | |
loop2207_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2209, exception, 'type' | |
eq $P2209, .CONTROL_LOOP_NEXT, loop2207_next | |
eq $P2209, .CONTROL_LOOP_REDO, loop2207_redo | |
loop2207_done: | |
pop_eh | |
for_undef_794: | |
.annotate 'line', 953 | |
new $P2210, "Exception" | |
set $P2210['type'], .CONTROL_RETURN | |
new $P2211, "Integer" | |
assign $P2211, 0 | |
setattribute $P2210, 'payload', $P2211 | |
throw $P2210 | |
.annotate 'line', 945 | |
.return () | |
control_2176: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2212, exception, "payload" | |
.return ($P2212) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block2187" :anon :subid("135_1307988395.99251") :outer("134_1307988395.99251") | |
.param pmc param_2193 | |
.annotate 'line', 947 | |
$P2189 = root_new ['parrot';'Hash'] | |
set $P2190, $P2189 | |
.lex "%meths", $P2190 | |
.annotate 'line', 948 | |
new $P2191, "Undef" | |
set $P2192, $P2191 | |
.lex "$can", $P2192 | |
.lex "$_", param_2193 | |
.annotate 'line', 947 | |
find_lex $P2194, "$_" | |
unless_null $P2194, vivify_795 | |
new $P2194, "Undef" | |
vivify_795: | |
get_how $P2195, $P2194 | |
find_lex $P2196, "$obj" | |
unless_null $P2196, vivify_796 | |
new $P2196, "Undef" | |
vivify_796: | |
$P2197 = $P2195."method_table"($P2196) | |
store_lex "%meths", $P2197 | |
.annotate 'line', 948 | |
find_lex $P2198, "$name" | |
unless_null $P2198, vivify_797 | |
new $P2198, "Undef" | |
vivify_797: | |
find_lex $P2199, "%meths" | |
unless_null $P2199, vivify_798 | |
$P2199 = root_new ['parrot';'Hash'] | |
vivify_798: | |
set $P2200, $P2199[$P2198] | |
unless_null $P2200, vivify_799 | |
new $P2200, "Undef" | |
vivify_799: | |
store_lex "$can", $P2200 | |
.annotate 'line', 949 | |
find_lex $P2203, "$can" | |
unless_null $P2203, vivify_800 | |
new $P2203, "Undef" | |
vivify_800: | |
defined $I2204, $P2203 | |
if $I2204, if_2202 | |
new $P2201, 'Integer' | |
set $P2201, $I2204 | |
goto if_2202_end | |
if_2202: | |
.annotate 'line', 950 | |
new $P2205, "Exception" | |
set $P2205['type'], .CONTROL_RETURN | |
find_lex $P2206, "$can" | |
unless_null $P2206, vivify_801 | |
new $P2206, "Undef" | |
vivify_801: | |
setattribute $P2205, 'payload', $P2206 | |
throw $P2205 | |
if_2202_end: | |
.annotate 'line', 946 | |
.return ($P2201) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "find_method" :anon :subid("136_1307988395.99251") :outer("77_1307988395.99251") | |
.param pmc param_2216 | |
.param pmc param_2217 | |
.param pmc param_2218 | |
.annotate 'line', 959 | |
.const 'Sub' $P2226 = "137_1307988395.99251" | |
capture_lex $P2226 | |
new $P2215, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P2215, control_2214 | |
push_eh $P2215 | |
.lex "self", param_2216 | |
.lex "$obj", param_2217 | |
.lex "$name", param_2218 | |
.annotate 'line', 960 | |
find_lex $P2220, "self" | |
find_lex $P2221, "$?CLASS" | |
getattribute $P2222, $P2220, $P2221, "@!mro" | |
unless_null $P2222, vivify_802 | |
$P2222 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_802: | |
defined $I2223, $P2222 | |
unless $I2223, for_undef_803 | |
iter $P2219, $P2222 | |
new $P2246, 'ExceptionHandler' | |
set_label $P2246, loop2245_handler | |
$P2246."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2246 | |
loop2245_test: | |
unless $P2219, loop2245_done | |
shift $P2224, $P2219 | |
loop2245_redo: | |
.const 'Sub' $P2226 = "137_1307988395.99251" | |
capture_lex $P2226 | |
$P2226($P2224) | |
loop2245_next: | |
goto loop2245_test | |
loop2245_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2247, exception, 'type' | |
eq $P2247, .CONTROL_LOOP_NEXT, loop2245_next | |
eq $P2247, .CONTROL_LOOP_REDO, loop2245_redo | |
loop2245_done: | |
pop_eh | |
for_undef_803: | |
.annotate 'line', 967 | |
null $P2248 | |
.annotate 'line', 959 | |
.return ($P2248) | |
control_2214: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2249, exception, "payload" | |
.return ($P2249) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPClassHOW"] | |
.include "except_types.pasm" | |
.sub "_block2225" :anon :subid("137_1307988395.99251") :outer("136_1307988395.99251") | |
.param pmc param_2231 | |
.annotate 'line', 961 | |
$P2227 = root_new ['parrot';'Hash'] | |
set $P2228, $P2227 | |
.lex "%meths", $P2228 | |
.annotate 'line', 962 | |
new $P2229, "Undef" | |
set $P2230, $P2229 | |
.lex "$found", $P2230 | |
.lex "$_", param_2231 | |
.annotate 'line', 961 | |
find_lex $P2232, "$_" | |
unless_null $P2232, vivify_804 | |
new $P2232, "Undef" | |
vivify_804: | |
get_how $P2233, $P2232 | |
find_lex $P2234, "$obj" | |
unless_null $P2234, vivify_805 | |
new $P2234, "Undef" | |
vivify_805: | |
$P2235 = $P2233."method_table"($P2234) | |
store_lex "%meths", $P2235 | |
.annotate 'line', 962 | |
find_lex $P2236, "$name" | |
unless_null $P2236, vivify_806 | |
new $P2236, "Undef" | |
vivify_806: | |
find_lex $P2237, "%meths" | |
unless_null $P2237, vivify_807 | |
$P2237 = root_new ['parrot';'Hash'] | |
vivify_807: | |
set $P2238, $P2237[$P2236] | |
unless_null $P2238, vivify_808 | |
new $P2238, "Undef" | |
vivify_808: | |
store_lex "$found", $P2238 | |
.annotate 'line', 963 | |
find_lex $P2241, "$found" | |
unless_null $P2241, vivify_809 | |
new $P2241, "Undef" | |
vivify_809: | |
defined $I2242, $P2241 | |
if $I2242, if_2240 | |
new $P2239, 'Integer' | |
set $P2239, $I2242 | |
goto if_2240_end | |
if_2240: | |
.annotate 'line', 964 | |
new $P2243, "Exception" | |
set $P2243['type'], .CONTROL_RETURN | |
find_lex $P2244, "$found" | |
unless_null $P2244, vivify_810 | |
new $P2244, "Undef" | |
vivify_810: | |
setattribute $P2243, 'payload', $P2244 | |
throw $P2243 | |
if_2240_end: | |
.annotate 'line', 960 | |
.return ($P2239) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "_block2251" :subid("138_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 972 | |
.const 'Sub' $P2310 = "146_1307988395.99251" | |
capture_lex $P2310 | |
.const 'Sub' $P2304 = "145_1307988395.99251" | |
capture_lex $P2304 | |
.const 'Sub' $P2300 = "144_1307988395.99251" | |
capture_lex $P2300 | |
.const 'Sub' $P2295 = "143_1307988395.99251" | |
capture_lex $P2295 | |
.const 'Sub' $P2290 = "142_1307988395.99251" | |
capture_lex $P2290 | |
.const 'Sub' $P2275 = "141_1307988395.99251" | |
capture_lex $P2275 | |
.const 'Sub' $P2268 = "140_1307988395.99251" | |
capture_lex $P2268 | |
.const 'Sub' $P2257 = "139_1307988395.99251" | |
capture_lex $P2257 | |
set $P2254, $P2253 | |
.lex "$?PACKAGE", $P2254 | |
set $P2256, $P2255 | |
.lex "$?CLASS", $P2256 | |
.annotate 'line', 1012 | |
.const 'Sub' $P2310 = "146_1307988395.99251" | |
newclosure $P2316, $P2310 | |
.annotate 'line', 972 | |
.return ($P2316) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "new" :anon :subid("139_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2258 | |
.param pmc param_2259 :optional :named("name") | |
.param int has_param_2259 :opt_flag | |
.annotate 'line', 976 | |
.lex "self", param_2258 | |
if has_param_2259, optparam_811 | |
new $P2260, "Undef" | |
set param_2259, $P2260 | |
optparam_811: | |
.lex "$name", param_2259 | |
.annotate 'line', 977 | |
new $P2261, "Undef" | |
set $P2262, $P2261 | |
.lex "$obj", $P2262 | |
find_lex $P2263, "self" | |
repr_instance_of $P2264, $P2263 | |
store_lex "$obj", $P2264 | |
.annotate 'line', 978 | |
find_lex $P2265, "$obj" | |
unless_null $P2265, vivify_812 | |
new $P2265, "Undef" | |
vivify_812: | |
find_lex $P2266, "$name" | |
unless_null $P2266, vivify_813 | |
new $P2266, "Undef" | |
vivify_813: | |
$P2265."BUILD"($P2266 :named("name")) | |
find_lex $P2267, "$obj" | |
unless_null $P2267, vivify_814 | |
new $P2267, "Undef" | |
vivify_814: | |
.annotate 'line', 976 | |
.return ($P2267) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "BUILD" :anon :subid("140_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2269 | |
.param pmc param_2270 :optional :named("name") | |
.param int has_param_2270 :opt_flag | |
.annotate 'line', 982 | |
.lex "self", param_2269 | |
if has_param_2270, optparam_815 | |
new $P2271, "Undef" | |
set param_2270, $P2271 | |
optparam_815: | |
.lex "$name", param_2270 | |
.annotate 'line', 983 | |
find_lex $P2272, "$name" | |
unless_null $P2272, vivify_816 | |
new $P2272, "Undef" | |
vivify_816: | |
find_lex $P2273, "self" | |
find_lex $P2274, "$?CLASS" | |
setattribute $P2273, $P2274, "$!name", $P2272 | |
.annotate 'line', 982 | |
.return ($P2272) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "new_type" :anon :subid("141_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2276 | |
.param pmc param_2279 :named("repr") | |
.param pmc param_2277 :optional :named("name") | |
.param int has_param_2277 :opt_flag | |
.annotate 'line', 989 | |
.lex "self", param_2276 | |
if has_param_2277, optparam_817 | |
new $P2278, "String" | |
assign $P2278, "<anon>" | |
set param_2277, $P2278 | |
optparam_817: | |
.lex "$name", param_2277 | |
.lex "$repr", param_2279 | |
.annotate 'line', 990 | |
new $P2280, "Undef" | |
set $P2281, $P2280 | |
.lex "$metaclass", $P2281 | |
find_lex $P2282, "self" | |
find_lex $P2283, "$name" | |
unless_null $P2283, vivify_818 | |
new $P2283, "Undef" | |
vivify_818: | |
$P2284 = $P2282."new"($P2283 :named("name")) | |
store_lex "$metaclass", $P2284 | |
.annotate 'line', 992 | |
find_lex $P2285, "$metaclass" | |
unless_null $P2285, vivify_819 | |
new $P2285, "Undef" | |
vivify_819: | |
find_lex $P2286, "$repr" | |
unless_null $P2286, vivify_820 | |
new $P2286, "Undef" | |
vivify_820: | |
set $S2287, $P2286 | |
repr_type_object_for $P2288, $P2285, $S2287 | |
$P2289 = root_new ['parrot';'Hash'] | |
set_who $P2288, $P2289 | |
.annotate 'line', 989 | |
.return ($P2288) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "add_method" :anon :subid("142_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2291 | |
.param pmc param_2292 | |
.param pmc param_2293 | |
.param pmc param_2294 | |
.annotate 'line', 996 | |
.lex "self", param_2291 | |
.lex "$obj", param_2292 | |
.lex "$name", param_2293 | |
.lex "$code_obj", param_2294 | |
.annotate 'line', 997 | |
die "Native types may not have methods (must be boxed to call method)" | |
.annotate 'line', 996 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "add_multi_method" :anon :subid("143_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2296 | |
.param pmc param_2297 | |
.param pmc param_2298 | |
.param pmc param_2299 | |
.annotate 'line', 1000 | |
.lex "self", param_2296 | |
.lex "$obj", param_2297 | |
.lex "$name", param_2298 | |
.lex "$code_obj", param_2299 | |
.annotate 'line', 1001 | |
die "Native types may not have methods (must be boxed to call method)" | |
.annotate 'line', 1000 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "add_attribute" :anon :subid("144_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2301 | |
.param pmc param_2302 | |
.param pmc param_2303 | |
.annotate 'line', 1004 | |
.lex "self", param_2301 | |
.lex "$obj", param_2302 | |
.lex "$meta_attr", param_2303 | |
.annotate 'line', 1005 | |
die "Native types may not have attributes" | |
.annotate 'line', 1004 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "compose" :anon :subid("145_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2305 | |
.param pmc param_2306 | |
.annotate 'line', 1008 | |
.lex "self", param_2305 | |
.lex "$obj", param_2306 | |
.annotate 'line', 1009 | |
new $P2307, "Integer" | |
assign $P2307, 1 | |
find_lex $P2308, "self" | |
find_lex $P2309, "$?CLASS" | |
setattribute $P2308, $P2309, "$!composed", $P2307 | |
.annotate 'line', 1008 | |
.return ($P2307) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPNativeHOW"] | |
.sub "name" :anon :subid("146_1307988395.99251") :outer("138_1307988395.99251") | |
.param pmc param_2311 | |
.param pmc param_2312 | |
.annotate 'line', 1012 | |
.lex "self", param_2311 | |
.lex "$obj", param_2312 | |
find_lex $P2313, "self" | |
find_lex $P2314, "$?CLASS" | |
getattribute $P2315, $P2313, $P2314, "$!name" | |
unless_null $P2315, vivify_821 | |
new $P2315, "Undef" | |
vivify_821: | |
.return ($P2315) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "_block2317" :subid("147_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 1018 | |
.const 'Sub' $P2500 = "160_1307988395.99251" | |
capture_lex $P2500 | |
.const 'Sub' $P2416 = "155_1307988395.99251" | |
capture_lex $P2416 | |
.const 'Sub' $P2407 = "154_1307988395.99251" | |
capture_lex $P2407 | |
.const 'Sub' $P2398 = "153_1307988395.99251" | |
capture_lex $P2398 | |
.const 'Sub' $P2393 = "152_1307988395.99251" | |
capture_lex $P2393 | |
.const 'Sub' $P2376 = "151_1307988395.99251" | |
capture_lex $P2376 | |
.const 'Sub' $P2360 = "150_1307988395.99251" | |
capture_lex $P2360 | |
.const 'Sub' $P2319 = "148_1307988395.99251" | |
capture_lex $P2319 | |
.annotate 'line', 1078 | |
.const 'Sub' $P2319 = "148_1307988395.99251" | |
newclosure $P2354, $P2319 | |
set $P2355, $P2354 | |
.lex "has_method", $P2355 | |
.annotate 'line', 1018 | |
set $P2357, $P2356 | |
.lex "$?PACKAGE", $P2357 | |
set $P2359, $P2358 | |
.lex "$?CLASS", $P2359 | |
.annotate 'line', 1074 | |
find_lex $P2508, "has_method" | |
.annotate 'line', 1018 | |
.return ($P2508) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.include "except_types.pasm" | |
.sub "has_method" :subid("148_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2322 | |
.param pmc param_2323 | |
.param pmc param_2324 | |
.annotate 'line', 1078 | |
.const 'Sub' $P2337 = "149_1307988395.99251" | |
capture_lex $P2337 | |
new $P2321, ['ExceptionHandler'], .CONTROL_RETURN | |
set_label $P2321, control_2320 | |
push_eh $P2321 | |
.lex "$target", param_2322 | |
.lex "$name", param_2323 | |
.lex "$local", param_2324 | |
.annotate 'line', 1079 | |
$P2325 = root_new ['parrot';'ResizablePMCArray'] | |
set $P2326, $P2325 | |
.lex "@methods", $P2326 | |
find_lex $P2327, "$target" | |
unless_null $P2327, vivify_822 | |
new $P2327, "Undef" | |
vivify_822: | |
get_how $P2328, $P2327 | |
find_lex $P2329, "$target" | |
unless_null $P2329, vivify_823 | |
new $P2329, "Undef" | |
vivify_823: | |
find_lex $P2330, "$local" | |
unless_null $P2330, vivify_824 | |
new $P2330, "Undef" | |
vivify_824: | |
$P2331 = $P2328."methods"($P2329, $P2330 :named("local")) | |
store_lex "@methods", $P2331 | |
.annotate 'line', 1080 | |
find_lex $P2333, "@methods" | |
unless_null $P2333, vivify_825 | |
$P2333 = root_new ['parrot';'ResizablePMCArray'] | |
vivify_825: | |
defined $I2334, $P2333 | |
unless $I2334, for_undef_826 | |
iter $P2332, $P2333 | |
new $P2349, 'ExceptionHandler' | |
set_label $P2349, loop2348_handler | |
$P2349."handle_types"(.CONTROL_LOOP_NEXT, .CONTROL_LOOP_REDO, .CONTROL_LOOP_LAST) | |
push_eh $P2349 | |
loop2348_test: | |
unless $P2332, loop2348_done | |
shift $P2335, $P2332 | |
loop2348_redo: | |
.const 'Sub' $P2337 = "149_1307988395.99251" | |
capture_lex $P2337 | |
$P2337($P2335) | |
loop2348_next: | |
goto loop2348_test | |
loop2348_handler: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2350, exception, 'type' | |
eq $P2350, .CONTROL_LOOP_NEXT, loop2348_next | |
eq $P2350, .CONTROL_LOOP_REDO, loop2348_redo | |
loop2348_done: | |
pop_eh | |
for_undef_826: | |
.annotate 'line', 1083 | |
new $P2351, "Exception" | |
set $P2351['type'], .CONTROL_RETURN | |
new $P2352, "Integer" | |
assign $P2352, 0 | |
setattribute $P2351, 'payload', $P2352 | |
throw $P2351 | |
.annotate 'line', 1078 | |
.return () | |
control_2320: | |
.local pmc exception | |
.get_results (exception) | |
getattribute $P2353, exception, "payload" | |
.return ($P2353) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.include "except_types.pasm" | |
.sub "_block2336" :anon :subid("149_1307988395.99251") :outer("148_1307988395.99251") | |
.param pmc param_2338 | |
.annotate 'line', 1080 | |
.lex "$_", param_2338 | |
.annotate 'line', 1081 | |
find_lex $P2341, "$_" | |
unless_null $P2341, vivify_827 | |
new $P2341, "Undef" | |
vivify_827: | |
set $S2342, $P2341 | |
find_lex $P2343, "$name" | |
unless_null $P2343, vivify_828 | |
new $P2343, "Undef" | |
vivify_828: | |
set $S2344, $P2343 | |
iseq $I2345, $S2342, $S2344 | |
if $I2345, if_2340 | |
new $P2339, 'Integer' | |
set $P2339, $I2345 | |
goto if_2340_end | |
if_2340: | |
new $P2346, "Exception" | |
set $P2346['type'], .CONTROL_RETURN | |
new $P2347, "Integer" | |
assign $P2347, 1 | |
setattribute $P2346, 'payload', $P2347 | |
throw $P2346 | |
if_2340_end: | |
.annotate 'line', 1080 | |
.return ($P2339) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "new" :anon :subid("150_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2361 | |
.param pmc param_2362 :named("name") | |
.param pmc param_2363 :optional :named("type") | |
.param int has_param_2363 :opt_flag | |
.param pmc param_2365 :optional :named("box_target") | |
.param int has_param_2365 :opt_flag | |
.annotate 'line', 1023 | |
.lex "self", param_2361 | |
.lex "$name", param_2362 | |
if has_param_2363, optparam_829 | |
new $P2364, "Undef" | |
set param_2363, $P2364 | |
optparam_829: | |
.lex "$type", param_2363 | |
if has_param_2365, optparam_830 | |
new $P2366, "Undef" | |
set param_2365, $P2366 | |
optparam_830: | |
.lex "$box_target", param_2365 | |
.annotate 'line', 1024 | |
new $P2367, "Undef" | |
set $P2368, $P2367 | |
.lex "$attr", $P2368 | |
find_lex $P2369, "self" | |
repr_instance_of $P2370, $P2369 | |
store_lex "$attr", $P2370 | |
.annotate 'line', 1025 | |
find_lex $P2371, "$attr" | |
unless_null $P2371, vivify_831 | |
new $P2371, "Undef" | |
vivify_831: | |
find_lex $P2372, "$name" | |
unless_null $P2372, vivify_832 | |
new $P2372, "Undef" | |
vivify_832: | |
find_lex $P2373, "$type" | |
unless_null $P2373, vivify_833 | |
new $P2373, "Undef" | |
vivify_833: | |
find_lex $P2374, "$box_target" | |
unless_null $P2374, vivify_834 | |
new $P2374, "Undef" | |
vivify_834: | |
$P2371."BUILD"($P2372 :named("name"), $P2373 :named("type"), $P2374 :named("box_target")) | |
find_lex $P2375, "$attr" | |
unless_null $P2375, vivify_835 | |
new $P2375, "Undef" | |
vivify_835: | |
.annotate 'line', 1023 | |
.return ($P2375) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "BUILD" :anon :subid("151_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2377 | |
.param pmc param_2378 :optional :named("name") | |
.param int has_param_2378 :opt_flag | |
.param pmc param_2380 :optional :named("type") | |
.param int has_param_2380 :opt_flag | |
.param pmc param_2382 :optional :named("box_target") | |
.param int has_param_2382 :opt_flag | |
.annotate 'line', 1029 | |
.lex "self", param_2377 | |
if has_param_2378, optparam_836 | |
new $P2379, "Undef" | |
set param_2378, $P2379 | |
optparam_836: | |
.lex "$name", param_2378 | |
if has_param_2380, optparam_837 | |
new $P2381, "Undef" | |
set param_2380, $P2381 | |
optparam_837: | |
.lex "$type", param_2380 | |
if has_param_2382, optparam_838 | |
new $P2383, "Undef" | |
set param_2382, $P2383 | |
optparam_838: | |
.lex "$box_target", param_2382 | |
.annotate 'line', 1030 | |
find_lex $P2384, "$name" | |
unless_null $P2384, vivify_839 | |
new $P2384, "Undef" | |
vivify_839: | |
find_lex $P2385, "self" | |
find_lex $P2386, "$?CLASS" | |
setattribute $P2385, $P2386, "$!name", $P2384 | |
.annotate 'line', 1031 | |
find_lex $P2387, "$type" | |
unless_null $P2387, vivify_840 | |
new $P2387, "Undef" | |
vivify_840: | |
find_lex $P2388, "self" | |
find_lex $P2389, "$?CLASS" | |
setattribute $P2388, $P2389, "$!type", $P2387 | |
.annotate 'line', 1032 | |
find_lex $P2390, "$box_target" | |
unless_null $P2390, vivify_841 | |
new $P2390, "Undef" | |
vivify_841: | |
find_lex $P2391, "self" | |
find_lex $P2392, "$?CLASS" | |
setattribute $P2391, $P2392, "$!box_target", $P2390 | |
.annotate 'line', 1029 | |
.return ($P2390) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "name" :anon :subid("152_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2394 | |
.annotate 'line', 1035 | |
.lex "self", param_2394 | |
find_lex $P2395, "self" | |
find_lex $P2396, "$?CLASS" | |
getattribute $P2397, $P2395, $P2396, "$!name" | |
unless_null $P2397, vivify_842 | |
new $P2397, "Undef" | |
vivify_842: | |
.return ($P2397) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "type" :anon :subid("153_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2399 | |
.annotate 'line', 1039 | |
.lex "self", param_2399 | |
.annotate 'line', 1040 | |
find_lex $P2401, "self" | |
find_lex $P2402, "$?CLASS" | |
getattribute $P2403, $P2401, $P2402, "$!type" | |
unless_null $P2403, vivify_843 | |
new $P2403, "Undef" | |
vivify_843: | |
set $P2400, $P2403 | |
defined $I2405, $P2400 | |
if $I2405, default_2404 | |
null $P2406 | |
set $P2400, $P2406 | |
default_2404: | |
.annotate 'line', 1039 | |
.return ($P2400) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "box_target" :anon :subid("154_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2408 | |
.annotate 'line', 1043 | |
.lex "self", param_2408 | |
.annotate 'line', 1044 | |
find_lex $P2411, "self" | |
find_lex $P2412, "$?CLASS" | |
getattribute $P2413, $P2411, $P2412, "$!box_target" | |
unless_null $P2413, vivify_844 | |
new $P2413, "Undef" | |
vivify_844: | |
if $P2413, if_2410 | |
new $P2415, "Integer" | |
assign $P2415, 0 | |
set $P2409, $P2415 | |
goto if_2410_end | |
if_2410: | |
new $P2414, "Integer" | |
assign $P2414, 1 | |
set $P2409, $P2414 | |
if_2410_end: | |
.annotate 'line', 1043 | |
.return ($P2409) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "compose" :anon :subid("155_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2417 | |
.param pmc param_2418 | |
.annotate 'line', 1047 | |
.const 'Sub' $P2472 = "158_1307988395.99251" | |
capture_lex $P2472 | |
.const 'Sub' $P2431 = "156_1307988395.99251" | |
capture_lex $P2431 | |
.lex "self", param_2417 | |
.lex "$obj", param_2418 | |
.annotate 'line', 1048 | |
new $P2419, "Undef" | |
set $P2420, $P2419 | |
.lex "$long_name", $P2420 | |
find_lex $P2421, "self" | |
find_lex $P2422, "$?CLASS" | |
getattribute $P2423, $P2421, $P2422, "$!name" | |
unless_null $P2423, vivify_845 | |
new $P2423, "Undef" | |
vivify_845: | |
set $S2424, $P2423 | |
new $P2425, 'String' | |
set $P2425, $S2424 | |
store_lex "$long_name", $P2425 | |
.annotate 'line', 1049 | |
find_lex $P2428, "self" | |
$P2429 = $P2428."has_mutator"() | |
if $P2429, if_2427 | |
.annotate 'line', 1061 | |
.const 'Sub' $P2472 = "158_1307988395.99251" | |
capture_lex $P2472 | |
$P2499 = $P2472() | |
set $P2426, $P2499 | |
.annotate 'line', 1049 | |
goto if_2427_end | |
if_2427: | |
.const 'Sub' $P2431 = "156_1307988395.99251" | |
capture_lex $P2431 | |
$P2470 = $P2431() | |
set $P2426, $P2470 | |
if_2427_end: | |
.annotate 'line', 1047 | |
.return ($P2426) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "_block2471" :anon :subid("158_1307988395.99251") :outer("155_1307988395.99251") | |
.annotate 'line', 1061 | |
.const 'Sub' $P2489 = "159_1307988395.99251" | |
capture_lex $P2489 | |
.annotate 'line', 1062 | |
new $P2473, "Undef" | |
set $P2474, $P2473 | |
.lex "$method", $P2474 | |
find_lex $P2475, "$long_name" | |
unless_null $P2475, vivify_846 | |
new $P2475, "Undef" | |
vivify_846: | |
set $S2476, $P2475 | |
substr $S2477, $S2476, 2 | |
new $P2478, 'String' | |
set $P2478, $S2477 | |
store_lex "$method", $P2478 | |
.annotate 'line', 1063 | |
find_lex $P2481, "$obj" | |
unless_null $P2481, vivify_847 | |
new $P2481, "Undef" | |
vivify_847: | |
find_lex $P2482, "$method" | |
unless_null $P2482, vivify_848 | |
new $P2482, "Undef" | |
vivify_848: | |
$P2483 = "has_method"($P2481, $P2482, 0) | |
unless $P2483, unless_2480 | |
set $P2479, $P2483 | |
goto unless_2480_end | |
unless_2480: | |
.annotate 'line', 1064 | |
find_lex $P2484, "$obj" | |
unless_null $P2484, vivify_849 | |
new $P2484, "Undef" | |
vivify_849: | |
get_how $P2485, $P2484 | |
find_lex $P2486, "$obj" | |
unless_null $P2486, vivify_850 | |
new $P2486, "Undef" | |
vivify_850: | |
find_lex $P2487, "$method" | |
unless_null $P2487, vivify_851 | |
new $P2487, "Undef" | |
vivify_851: | |
.annotate 'line', 1065 | |
.const 'Sub' $P2489 = "159_1307988395.99251" | |
newclosure $P2497, $P2489 | |
$P2498 = $P2485."add_method"($P2486, $P2487, $P2497) | |
.annotate 'line', 1063 | |
set $P2479, $P2498 | |
unless_2480_end: | |
.annotate 'line', 1061 | |
.return ($P2479) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "_block2488" :anon :subid("159_1307988395.99251") :outer("158_1307988395.99251") | |
.param pmc param_2490 | |
.annotate 'line', 1065 | |
.lex "self", param_2490 | |
.annotate 'line', 1066 | |
find_lex $P2491, "self" | |
find_lex $P2492, "$obj" | |
unless_null $P2492, vivify_852 | |
new $P2492, "Undef" | |
vivify_852: | |
get_what $P2493, $P2492 | |
find_lex $P2494, "$long_name" | |
unless_null $P2494, vivify_853 | |
new $P2494, "Undef" | |
vivify_853: | |
set $S2495, $P2494 | |
getattribute $P2496, $P2491, $P2493, $S2495 | |
.annotate 'line', 1065 | |
.return ($P2496) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "_block2430" :anon :subid("156_1307988395.99251") :outer("155_1307988395.99251") | |
.annotate 'line', 1049 | |
.const 'Sub' $P2449 = "157_1307988395.99251" | |
capture_lex $P2449 | |
.annotate 'line', 1050 | |
new $P2432, "Undef" | |
set $P2433, $P2432 | |
.lex "$method", $P2433 | |
find_lex $P2434, "$long_name" | |
unless_null $P2434, vivify_854 | |
new $P2434, "Undef" | |
vivify_854: | |
set $S2435, $P2434 | |
substr $S2436, $S2435, 1 | |
new $P2437, 'String' | |
set $P2437, $S2436 | |
store_lex "$method", $P2437 | |
.annotate 'line', 1051 | |
find_lex $P2440, "$obj" | |
unless_null $P2440, vivify_855 | |
new $P2440, "Undef" | |
vivify_855: | |
find_lex $P2441, "$method" | |
unless_null $P2441, vivify_856 | |
new $P2441, "Undef" | |
vivify_856: | |
$P2442 = "has_method"($P2440, $P2441, 0) | |
unless $P2442, unless_2439 | |
set $P2438, $P2442 | |
goto unless_2439_end | |
unless_2439: | |
.annotate 'line', 1052 | |
find_lex $P2443, "$obj" | |
unless_null $P2443, vivify_857 | |
new $P2443, "Undef" | |
vivify_857: | |
get_how $P2444, $P2443 | |
find_lex $P2445, "$obj" | |
unless_null $P2445, vivify_858 | |
new $P2445, "Undef" | |
vivify_858: | |
get_what $P2446, $P2445 | |
find_lex $P2447, "$method" | |
unless_null $P2447, vivify_859 | |
new $P2447, "Undef" | |
vivify_859: | |
.const 'Sub' $P2449 = "157_1307988395.99251" | |
newclosure $P2468, $P2449 | |
$P2469 = $P2444."add_method"($P2446, $P2447, $P2468) | |
.annotate 'line', 1051 | |
set $P2438, $P2469 | |
unless_2439_end: | |
.annotate 'line', 1049 | |
.return ($P2438) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "_block2448" :anon :subid("157_1307988395.99251") :outer("156_1307988395.99251") | |
.param pmc param_2450 | |
.param pmc param_2451 :optional | |
.param int has_param_2451 :opt_flag | |
.annotate 'line', 1052 | |
.lex "self", param_2450 | |
if has_param_2451, optparam_860 | |
new $P2452, "Undef" | |
set param_2451, $P2452 | |
optparam_860: | |
.lex "$value", param_2451 | |
.annotate 'line', 1054 | |
find_lex $P2454, "$value" | |
unless_null $P2454, vivify_861 | |
new $P2454, "Undef" | |
vivify_861: | |
defined $I2455, $P2454 | |
unless $I2455, if_2453_end | |
.annotate 'line', 1053 | |
find_lex $P2456, "self" | |
find_lex $P2457, "$obj" | |
unless_null $P2457, vivify_862 | |
new $P2457, "Undef" | |
vivify_862: | |
get_what $P2458, $P2457 | |
find_lex $P2459, "$long_name" | |
unless_null $P2459, vivify_863 | |
new $P2459, "Undef" | |
vivify_863: | |
set $S2460, $P2459 | |
find_lex $P2461, "$value" | |
unless_null $P2461, vivify_864 | |
new $P2461, "Undef" | |
vivify_864: | |
setattribute $P2456, $P2458, $S2460, $P2461 | |
if_2453_end: | |
.annotate 'line', 1056 | |
find_lex $P2462, "self" | |
find_lex $P2463, "$obj" | |
unless_null $P2463, vivify_865 | |
new $P2463, "Undef" | |
vivify_865: | |
get_what $P2464, $P2463 | |
find_lex $P2465, "$long_name" | |
unless_null $P2465, vivify_866 | |
new $P2465, "Undef" | |
vivify_866: | |
set $S2466, $P2465 | |
getattribute $P2467, $P2462, $P2464, $S2466 | |
.annotate 'line', 1052 | |
.return ($P2467) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPAttribute"] | |
.sub "has_mutator" :anon :subid("160_1307988395.99251") :outer("147_1307988395.99251") | |
.param pmc param_2501 | |
.annotate 'line', 1074 | |
.lex "self", param_2501 | |
.annotate 'line', 1075 | |
find_lex $P2502, "self" | |
find_lex $P2503, "$?CLASS" | |
getattribute $P2504, $P2502, $P2503, "$!name" | |
unless_null $P2504, vivify_867 | |
new $P2504, "Undef" | |
vivify_867: | |
set $S2505, $P2504 | |
substr $S2506, $S2505, 1, 1 | |
isne $I2507, $S2506, "!" | |
.annotate 'line', 1074 | |
.return ($I2507) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "_block2509" :subid("161_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 1089 | |
.const 'Sub' $P2569 = "169_1307988395.99251" | |
capture_lex $P2569 | |
.const 'Sub' $P2563 = "168_1307988395.99251" | |
capture_lex $P2563 | |
.const 'Sub' $P2559 = "167_1307988395.99251" | |
capture_lex $P2559 | |
.const 'Sub' $P2554 = "166_1307988395.99251" | |
capture_lex $P2554 | |
.const 'Sub' $P2549 = "165_1307988395.99251" | |
capture_lex $P2549 | |
.const 'Sub' $P2533 = "164_1307988395.99251" | |
capture_lex $P2533 | |
.const 'Sub' $P2526 = "163_1307988395.99251" | |
capture_lex $P2526 | |
.const 'Sub' $P2515 = "162_1307988395.99251" | |
capture_lex $P2515 | |
set $P2512, $P2511 | |
.lex "$?PACKAGE", $P2512 | |
set $P2514, $P2513 | |
.lex "$?CLASS", $P2514 | |
.annotate 'line', 1130 | |
.const 'Sub' $P2569 = "169_1307988395.99251" | |
newclosure $P2575, $P2569 | |
.annotate 'line', 1089 | |
.return ($P2575) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "new" :anon :subid("162_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2516 | |
.param pmc param_2517 :optional :named("name") | |
.param int has_param_2517 :opt_flag | |
.annotate 'line', 1093 | |
.lex "self", param_2516 | |
if has_param_2517, optparam_868 | |
new $P2518, "Undef" | |
set param_2517, $P2518 | |
optparam_868: | |
.lex "$name", param_2517 | |
.annotate 'line', 1094 | |
new $P2519, "Undef" | |
set $P2520, $P2519 | |
.lex "$obj", $P2520 | |
find_lex $P2521, "self" | |
repr_instance_of $P2522, $P2521 | |
store_lex "$obj", $P2522 | |
.annotate 'line', 1095 | |
find_lex $P2523, "$obj" | |
unless_null $P2523, vivify_869 | |
new $P2523, "Undef" | |
vivify_869: | |
find_lex $P2524, "$name" | |
unless_null $P2524, vivify_870 | |
new $P2524, "Undef" | |
vivify_870: | |
$P2523."BUILD"($P2524 :named("name")) | |
find_lex $P2525, "$obj" | |
unless_null $P2525, vivify_871 | |
new $P2525, "Undef" | |
vivify_871: | |
.annotate 'line', 1093 | |
.return ($P2525) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "BUILD" :anon :subid("163_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2527 | |
.param pmc param_2528 :optional :named("name") | |
.param int has_param_2528 :opt_flag | |
.annotate 'line', 1099 | |
.lex "self", param_2527 | |
if has_param_2528, optparam_872 | |
new $P2529, "Undef" | |
set param_2528, $P2529 | |
optparam_872: | |
.lex "$name", param_2528 | |
.annotate 'line', 1100 | |
find_lex $P2530, "$name" | |
unless_null $P2530, vivify_873 | |
new $P2530, "Undef" | |
vivify_873: | |
find_lex $P2531, "self" | |
find_lex $P2532, "$?CLASS" | |
setattribute $P2531, $P2532, "$!name", $P2530 | |
.annotate 'line', 1099 | |
.return ($P2530) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "new_type" :anon :subid("164_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2534 | |
.param pmc param_2535 :optional :named("name") | |
.param int has_param_2535 :opt_flag | |
.param pmc param_2537 :optional :named("repr") | |
.param int has_param_2537 :opt_flag | |
.annotate 'line', 1105 | |
.lex "self", param_2534 | |
if has_param_2535, optparam_874 | |
new $P2536, "String" | |
assign $P2536, "<anon>" | |
set param_2535, $P2536 | |
optparam_874: | |
.lex "$name", param_2535 | |
if has_param_2537, optparam_875 | |
new $P2538, "String" | |
assign $P2538, "P6opaque" | |
set param_2537, $P2538 | |
optparam_875: | |
.lex "$repr", param_2537 | |
.annotate 'line', 1106 | |
new $P2539, "Undef" | |
set $P2540, $P2539 | |
.lex "$metaclass", $P2540 | |
find_lex $P2541, "self" | |
find_lex $P2542, "$name" | |
unless_null $P2542, vivify_876 | |
new $P2542, "Undef" | |
vivify_876: | |
$P2543 = $P2541."new"($P2542 :named("name")) | |
store_lex "$metaclass", $P2543 | |
.annotate 'line', 1108 | |
find_lex $P2544, "$metaclass" | |
unless_null $P2544, vivify_877 | |
new $P2544, "Undef" | |
vivify_877: | |
find_lex $P2545, "$repr" | |
unless_null $P2545, vivify_878 | |
new $P2545, "Undef" | |
vivify_878: | |
set $S2546, $P2545 | |
repr_type_object_for $P2547, $P2544, $S2546 | |
$P2548 = root_new ['parrot';'Hash'] | |
set_who $P2547, $P2548 | |
.annotate 'line', 1105 | |
.return ($P2547) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "add_method" :anon :subid("165_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2550 | |
.param pmc param_2551 | |
.param pmc param_2552 | |
.param pmc param_2553 | |
.annotate 'line', 1112 | |
.lex "self", param_2550 | |
.lex "$obj", param_2551 | |
.lex "$name", param_2552 | |
.lex "$code_obj", param_2553 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "add_multi_method" :anon :subid("166_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2555 | |
.param pmc param_2556 | |
.param pmc param_2557 | |
.param pmc param_2558 | |
.annotate 'line', 1118 | |
.lex "self", param_2555 | |
.lex "$obj", param_2556 | |
.lex "$name", param_2557 | |
.lex "$code_obj", param_2558 | |
.annotate 'line', 1119 | |
die "Modules may not have methods" | |
.annotate 'line', 1118 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "add_attribute" :anon :subid("167_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2560 | |
.param pmc param_2561 | |
.param pmc param_2562 | |
.annotate 'line', 1122 | |
.lex "self", param_2560 | |
.lex "$obj", param_2561 | |
.lex "$meta_attr", param_2562 | |
.annotate 'line', 1123 | |
die "Modules may not have attributes" | |
.annotate 'line', 1122 | |
.return () | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "compose" :anon :subid("168_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2564 | |
.param pmc param_2565 | |
.annotate 'line', 1126 | |
.lex "self", param_2564 | |
.lex "$obj", param_2565 | |
.annotate 'line', 1127 | |
new $P2566, "Integer" | |
assign $P2566, 1 | |
find_lex $P2567, "self" | |
find_lex $P2568, "$?CLASS" | |
setattribute $P2567, $P2568, "$!composed", $P2566 | |
.annotate 'line', 1126 | |
.return ($P2566) | |
.end | |
.HLL "nqp" | |
.namespace ["NQPModuleHOW"] | |
.sub "name" :anon :subid("169_1307988395.99251") :outer("161_1307988395.99251") | |
.param pmc param_2570 | |
.param pmc param_2571 | |
.annotate 'line', 1130 | |
.lex "self", param_2570 | |
.lex "$obj", param_2571 | |
find_lex $P2572, "self" | |
find_lex $P2573, "$?CLASS" | |
getattribute $P2574, $P2572, $P2573, "$!name" | |
unless_null $P2574, vivify_879 | |
new $P2574, "Undef" | |
vivify_879: | |
.return ($P2574) | |
.end | |
.HLL "nqp" | |
.namespace [] | |
.sub "_block2576" :anon :subid("170_1307988395.99251") :outer("10_1307988395.99251") | |
.annotate 'line', 1138 | |
set $P2579, $P2578 | |
.lex "$?PACKAGE", $P2579 | |
set $P2581, $P2580 | |
.lex "$?CLASS", $P2581 | |
.annotate 'line', 1139 | |
find_lex $P2582, "NQPModuleHOW" | |
find_lex $P2583, "$?PACKAGE" | |
unless_null $P2583, vivify_880 | |
new $P2583, "Undef" | |
store_lex "$?PACKAGE", $P2583 | |
vivify_880: | |
get_who $P2584, $P2583 | |
set $P2584["module"], $P2582 | |
.annotate 'line', 1140 | |
find_lex $P2585, "NQPClassHOW" | |
find_lex $P2586, "$?PACKAGE" | |
unless_null $P2586, vivify_881 | |
new $P2586, "Undef" | |
store_lex "$?PACKAGE", $P2586 | |
vivify_881: | |
get_who $P2587, $P2586 | |
set $P2587["class"], $P2585 | |
.annotate 'line', 1141 | |
find_lex $P2588, "NQPAttribute" | |
find_lex $P2589, "$?PACKAGE" | |
unless_null $P2589, vivify_882 | |
new $P2589, "Undef" | |
store_lex "$?PACKAGE", $P2589 | |
vivify_882: | |
get_who $P2590, $P2589 | |
set $P2590["class-attr"], $P2588 | |
.annotate 'line', 1142 | |
find_lex $P2591, "NQPClassHOW" | |
find_lex $P2592, "$?PACKAGE" | |
unless_null $P2592, vivify_883 | |
new $P2592, "Undef" | |
store_lex "$?PACKAGE", $P2592 | |
vivify_883: | |
get_who $P2593, $P2592 | |
set $P2593["grammar"], $P2591 | |
.annotate 'line', 1143 | |
find_lex $P2594, "NQPAttribute" | |
find_lex $P2595, "$?PACKAGE" | |
unless_null $P2595, vivify_884 | |
new $P2595, "Undef" | |
store_lex "$?PACKAGE", $P2595 | |
vivify_884: | |
get_who $P2596, $P2595 | |
set $P2596["grammar-attr"], $P2594 | |
.annotate 'line', 1144 | |
find_lex $P2597, "NQPParametricRoleHOW" | |
find_lex $P2598, "$?PACKAGE" | |
unless_null $P2598, vivify_885 | |
new $P2598, "Undef" | |
store_lex "$?PACKAGE", $P2598 | |
vivify_885: | |
get_who $P2599, $P2598 | |
set $P2599["role"], $P2597 | |
.annotate 'line', 1145 | |
find_lex $P2600, "NQPAttribute" | |
find_lex $P2601, "$?PACKAGE" | |
unless_null $P2601, vivify_886 | |
new $P2601, "Undef" | |
store_lex "$?PACKAGE", $P2601 | |
vivify_886: | |
get_who $P2602, $P2601 | |
set $P2602["role-attr"], $P2600 | |
.annotate 'line', 1146 | |
find_lex $P2603, "NQPNativeHOW" | |
find_lex $P2604, "$?PACKAGE" | |
unless_null $P2604, vivify_887 | |
new $P2604, "Undef" | |
store_lex "$?PACKAGE", $P2604 | |
vivify_887: | |
get_who $P2605, $P2604 | |
set $P2605["native"], $P2603 | |
.annotate 'line', 1138 | |
.return ($P2603) | |
.end | |
.HLL "nqp" | |
.namespace [] | |
.sub "_block2613" :load :anon :subid("171_1307988395.99251") | |
.annotate 'line', 1 | |
.const 'Sub' $P2615 = "10_1307988395.99251" | |
$P2616 = $P2615() | |
.return ($P2616) | |
.end | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment