!RBIX 0 x M 1 n n x 10 __script__ i 54 5 45 0 1 7 2 64 65 49 3 0 49 4 2 47 49 5 1 15 99 7 6 45 7 8 43 9 43 10 65 49 11 3 13 99 12 7 12 12 7 13 12 65 12 49 14 4 15 49 12 0 15 2 11 I 6 I 0 I 0 I 0 n p 15 x 4 File n s 9 ../helper x 11 active_path x 11 expand_path x 7 require x 9 InputTest x 4 Test n x 4 Unit x 8 TestCase x 10 open_class x 14 __class_init__ M 1 n n x 9 InputTest i 72 5 66 99 7 0 7 1 65 67 49 2 0 49 3 4 15 99 7 4 7 5 65 67 49 2 0 49 3 4 15 99 7 6 7 7 65 67 49 2 0 49 3 4 15 99 7 8 7 9 65 67 49 2 0 49 3 4 15 99 7 10 7 11 65 67 49 2 0 49 3 4 11 I 5 I 0 I 0 I 0 n p 12 x 14 test_memoized? M 1 n n x 14 test_memoized? i 40 5 3 45 0 1 13 71 2 47 9 26 47 49 3 0 13 7 4 64 47 49 5 1 15 8 32 7 4 64 49 2 1 49 6 0 47 49 7 2 11 I 5 I 0 I 0 I 0 n p 8 x 5 Input n x 3 new x 8 allocate s 0 x 10 initialize x 9 memoized? x 12 assert_equal p 5 I -1 I 4 I 0 I 5 I 28 x 49 /Users/michael/Projects/citrus/test/input_test.rb p 0 x 17 method_visibility x 15 add_defn_method x 16 test_offsets_new M 1 n n x 16 test_offsets_new i 83 45 0 1 13 71 2 47 9 24 47 49 3 0 13 7 4 64 47 49 5 1 15 8 30 7 4 64 49 2 1 19 0 15 5 78 20 0 49 6 0 47 49 7 2 15 5 78 20 0 49 8 0 47 49 7 2 15 5 79 20 0 49 9 0 47 49 7 2 15 5 7 10 64 20 0 49 11 0 47 49 7 2 11 I 4 I 1 I 0 I 0 n p 12 x 5 Input n x 3 new x 8 allocate s 11 abc def ghi x 10 initialize x 11 line_offset x 12 assert_equal x 10 line_index x 11 line_number s 4 abc x 4 line p 13 I -1 I 8 I 0 I 9 I 21 I a I 2d I b I 39 I c I 45 I d I 53 x 49 /Users/michael/Projects/citrus/test/input_test.rb p 1 x 5 input x 21 test_offsets_advanced M 1 n n x 21 test_offsets_advanced i 95 45 0 1 13 71 2 47 9 24 47 49 3 0 13 7 4 64 47 49 5 1 15 8 30 7 4 64 49 2 1 19 0 15 20 0 4 6 13 18 2 49 6 1 15 15 5 80 20 0 49 7 0 47 49 8 2 15 5 79 20 0 49 9 0 47 49 8 2 15 5 80 20 0 49 10 0 47 49 8 2 15 5 7 11 64 20 0 49 12 0 47 49 8 2 11 I 4 I 1 I 0 I 0 n p 13 x 5 Input n x 3 new x 8 allocate s 11 abc def ghi x 10 initialize x 4 pos= x 11 line_offset x 12 assert_equal x 10 line_index x 11 line_number s 4 def x 4 line p 15 I -1 I 10 I 0 I 11 I 21 I 12 I 2d I 13 I 39 I 14 I 45 I 15 I 51 I 16 I 5f x 49 /Users/michael/Projects/citrus/test/input_test.rb p 1 x 5 input x 9 test_exec M 1 n n x 9 test_exec i 232 45 0 1 7 2 64 49 3 1 19 0 15 45 0 4 7 5 64 49 3 1 19 1 15 45 0 6 7 7 64 49 3 1 19 2 15 45 0 8 20 0 20 1 20 2 35 3 49 3 1 19 3 15 45 9 10 13 71 11 47 9 80 47 49 12 0 13 20 3 78 45 13 14 47 49 15 3 15 8 89 20 3 78 45 13 16 49 11 3 19 4 15 45 17 18 13 71 11 47 9 116 47 49 12 0 13 7 19 64 47 49 15 1 15 8 122 7 19 64 49 11 1 19 5 15 20 5 20 4 49 20 1 19 6 15 20 4 20 3 20 0 45 21 22 79 20 1 45 21 23 79 20 2 45 21 24 79 45 21 25 4 3 20 3 20 0 45 21 26 79 20 1 45 21 27 79 20 2 45 21 28 79 45 21 29 4 3 20 3 20 0 45 21 30 79 20 1 45 21 31 79 20 2 45 21 32 79 45 21 33 4 3 45 21 34 4 9 35 39 19 7 15 5 20 7 20 6 47 49 35 2 11 I 2f I 8 I 0 I 0 n p 36 x 4 Rule n s 1 a x 3 for n s 1 b n s 1 c n x 6 Repeat n x 3 new x 8 allocate x 8 Infinity n x 10 initialize n x 5 Input n s 9 abcabcabc x 4 exec x 5 CLOSE n n n n n n n n n n n n n x 12 assert_equal p 55 I -1 I 19 I 0 I 1a I c I 1b I 18 I 1c I 24 I 1d I 35 I 1e I 5c I 20 I 7d I 21 I 87 I 24 I 89 I 25 I 8b I 26 I 91 I 27 I 97 I 28 I 9d I 29 I a2 I 2a I a4 I 2b I aa I 2c I b0 I 2d I b6 I 2e I bb I 2f I bd I 30 I c3 I 31 I c9 I 32 I cf I 33 I d4 I 34 I db I 23 I de I 37 I e8 x 49 /Users/michael/Projects/citrus/test/input_test.rb p 8 x 1 a x 1 b x 1 c x 1 s x 1 r x 5 input x 6 events x 15 expected_events x 10 test_exec2 M 1 n n x 10 test_exec2 i 291 45 0 1 7 2 64 49 3 1 19 0 15 45 0 4 7 5 64 49 3 1 19 1 15 45 6 7 13 71 8 47 9 51 47 49 9 0 13 20 0 20 1 35 2 47 49 10 1 15 8 60 20 0 20 1 35 2 49 8 1 19 2 15 45 11 12 13 71 8 47 9 90 47 49 9 0 13 20 2 78 45 13 14 47 49 10 3 15 8 99 20 2 78 45 13 15 49 8 3 19 3 15 45 0 16 20 0 20 3 35 2 49 3 1 19 4 15 45 17 18 13 71 8 47 9 141 47 49 9 0 13 7 19 64 47 49 10 1 15 8 147 7 19 64 49 8 1 19 5 15 20 5 20 4 49 20 1 19 6 15 20 4 20 0 45 21 22 79 20 3 20 2 20 1 45 21 23 79 45 21 24 79 20 2 20 1 45 21 25 79 45 21 26 79 20 2 20 0 45 21 27 79 45 21 28 79 20 2 20 1 45 21 29 79 45 21 30 79 20 2 20 0 45 21 31 79 45 21 32 79 20 2 20 1 45 21 33 79 45 21 34 79 20 2 20 1 45 21 35 79 45 21 36 79 20 2 20 0 45 21 37 79 45 21 38 79 45 21 39 4 8 45 21 40 4 9 35 57 19 7 15 5 20 7 20 6 47 49 41 2 11 I 41 I 8 I 0 I 0 n p 42 x 4 Rule n s 1 a x 3 for n s 1 b x 6 Choice n x 3 new x 8 allocate x 10 initialize x 6 Repeat n x 8 Infinity n n n x 5 Input n s 9 abbababba x 4 exec x 5 CLOSE n n n n n n n n n n n n n n n n n n n x 12 assert_equal p 79 I -1 I 3a I 0 I 3b I c I 3c I 18 I 3d I 3f I 3e I 66 I 3f I 75 I 41 I 96 I 42 I a0 I 45 I a2 I 46 I a8 I 47 I aa I 48 I ac I 49 I b2 I 4a I b6 I 4b I b8 I 4c I be I 4d I c2 I 4e I c4 I 4f I ca I 50 I ce I 51 I d0 I 52 I d6 I 53 I da I 54 I dc I 55 I e2 I 56 I e6 I 57 I e8 I 58 I ee I 59 I f2 I 5a I f4 I 5b I fa I 5c I fe I 5d I 100 I 5e I 106 I 5f I 10a I 60 I 10f I 61 I 116 I 44 I 119 I 64 I 123 x 49 /Users/michael/Projects/citrus/test/input_test.rb p 8 x 1 a x 1 b x 1 c x 1 r x 1 s x 5 input x 6 events x 15 expected_events p 11 I 2 I 4 I 10 I 8 I 1e I 10 I 2c I 19 I 3a I 3a I 48 x 49 /Users/michael/Projects/citrus/test/input_test.rb p 0 x 13 attach_method p 5 I 0 I 1 I 13 I 3 I 36 x 49 /Users/michael/Projects/citrus/test/input_test.rb p 0