Annotation of parser3/tests/430.html, revision 1.1
1.1 ! moko 1: @main[]
! 2:
! 3: 0. init
! 4:
! 5: 0.1 $a[; $.k1[v1] $.k2[v2] ;^method[param];$b[b]vv] ^show[$a]
! 6:
! 7: 0.2 $a[$b[b;c]vv] ^show[$a] ^show[$b] $a.CLASS_NAME $b.CLASS_NAME
! 8:
! 9: 0.3 $a[; $.k1[v1] $.k2[v2] ;$vv] ^show[$a]
! 10:
! 11: 0.4 $a.1[string] $a.5(6) ^show[$a]
! 12:
! 13: 0.5 ^try-catch{ $a.-5[bug] }
! 14:
! 15: 0.6 ^a.count[] vs ^a.count[all] ^a._count[all]
! 16:
! 17:
! 18: 1. create, add vs join
! 19:
! 20: 1.1 создаем "дырявый" массив $a[^array::create[ $.2[1] $.5[2] $.9[3] ]]
! 21: 1.2 из него дырявый массив: ^show[^array::create[$a]]
! 22: 1.3 из него обычный массив: $b[^array::create[]] ^b.join[$a] ^show[$b]
! 23:
! 24: 1.4 если параметр хеш, перезапись значений при add: ^b.add[ $.2[over] ] ^show[$b]
! 25: 1.5 если параметр хеш, добавление значений при join: ^b.join[ $.2[over] ] ^show[$b]
! 26:
! 27: 1.6 ^try-catch{ ^a.add[$a] }
! 28:
! 29: $b[^array::create[ $.2[over2] $.4[over4] ]]
! 30: $c[^array::create[$a]]
! 31: 1.6 если параметр массив, перезапись значений при add: ^show[$a] ^a.add[$b] ^show[$a]
! 32: 1.7 если параметр массив, добевление значений при join: ^show[$c] ^c.join[$b] ^show[$c]
! 33:
! 34: 2. left, right, mid, for, foreach, select
! 35: $a[^array::create[ $.1[v1] $.5[v5] $.6[v6] $.8[v8] ]]
! 36:
! 37: 2.1 ^show[^a.left(2)]
! 38: 2.2 ^show[^a.left(10)]
! 39: 2.3 ^show[^a.left(-2)]
! 40:
! 41: 2.4 ^show[^a.right(2)]
! 42: 2.5 ^show[^a.right(10)]
! 43: 2.6 ^show[^a.right(-2)]
! 44:
! 45: 2.7 ^show[^a.mid(2)]
! 46: 2.8 ^show[^a.mid(2;1)]
! 47: 2.9 ^show[^a.mid(0;1)]
! 48:
! 49: 2.10 ^a.foreach[;v]{'$v'}[,]
! 50: 2.11 ^a.foreach[k;]{'$k'}[,]
! 51: 2.12 ^a.foreach[;v]{'$v'}[,]
! 52: 2.13 ^a.foreach[k;v]{'$v'}{[$k],}
! 53: 2.14 ^a.for[;v]{'$v'}[,]
! 54: 2.14 ^a.for[;v]{$v.CLASS_NAME}[,]
! 55: 2.15 ^a.for[k;v]{$v}{[$k],}
! 56: 2.16 ^a.for[;v]{ $v}{,}
! 57: 2.17 ^a.for[k;v]{$k=$v}{, }
! 58: 2.18 ^a.for[k;v]{$k=$v ^if($k>3){^break[]}}
! 59:
! 60: 2.20 ^show[^a.select[k;v]($k>5)]
! 61: 2.21 ^show[^a.select[k;v]($k==5)]
! 62: 2.22 ^show[^a.select[k;v]($v eq 'v6')]
! 63: 2.23 ^show[^a.select[k;v]($k>1)[ $.limit(2) ]]
! 64: 2.24 ^show[^a.select[k;v]($k>1)[ $.limit(2) $.reverse(1) ]]
! 65: 2.25 ^try-catch{ ^a.select[k;v]($k>1)[ $.bug(1) ] }
! 66:
! 67:
! 68: 3. append/insert
! 69:
! 70: $a[^array::create[ ]]
! 71:
! 72: 3.1 ^show[$a]
! 73:
! 74: 3.2 ^try-catch{ $b[^array::create[$method]] }
! 75: 3.3 ^try-catch{ $b[^array::insert(-1)[value]] }
! 76: 3.4 ^try-catch{ $b[^array::insert[abc][value]] }
! 77: 3.5 ^try-catch{ ^array::insert(100000000000000)[value] }
! 78:
! 79: 3.6 OK: $b[^array::append[$method]] $b[^array::new[$method]]
! 80:
! 81: 3.7 $a[a1;a2;a3;a4] $b[b1;b2]
! 82:
! 83: ^a.insert(10)[v1;v2]
! 84: ^a.append[$b]
! 85: ^a.append[c1;c2]
! 86: ^show[$a]
! 87:
! 88: 3.8 ^a.insert(2)[d1;d2]
! 89: ^show[$a]
! 90:
! 91: 3.9 ^try-catch{ $a[^array::create{}] }
! 92: 3.10 ^try-catch{ $a[^array::create[not whitespace string]] }
! 93:
! 94: 3.11 ^a.join[ ]
! 95: 3.12 ^try-catch{ ^a.join{}] }
! 96: 3.13 ^try-catch{ ^a.join[not whitespace string] }
! 97:
! 98: 4. json
! 99:
! 100: $f[^file::load[text;253_json.txt; $.charset[windows-1251] ]]
! 101: $s[^taint[as-is][$f.text]]
! 102:
! 103: 4.1. ^try-catch{ $o[^json:parse[$s][ $.array[x] ]] }
! 104:
! 105: $o[^json:parse[$s][ $.distinct[all] ]]
! 106:
! 107: 4.2. $o.array.CLASS_NAME, $o.array.6
! 108:
! 109: 4.3 ^print[^json:string[$o; $.indent(1) $.table[array] ]]
! 110:
! 111: $o.array.15[last]
! 112:
! 113: 4.4 ^print[^json:string[$o.array; $.indent(1) $.array[object] ]]
! 114:
! 115: 4.5 ^print[^json:string[$o.array; $.indent(1) $.array[array] ]]
! 116:
! 117: 4.6 ^print[^json:string[$o.array; $.indent(1) $.array[compact] ]]
! 118:
! 119: 4.7 ^try-catch{ ^print[^json:string[$o.array; $.array[bug] ]] }
! 120:
! 121:
! 122:
! 123: @print[s]
! 124: $result[^s.replace[e+0;e+]]
! 125:
! 126: @method[param]
! 127: here?
! 128:
! 129: @show[a]
! 130: ^json:string[$a; $.array[object] ]
E-mail: