# New Ticket Created by Simon Glover
# Please include the string: [netlabs #648]
# in the subject line of all future correspondence about this issue.
# <URL: http://bugs6.perl.org/rt2/Ticket/Display.html?id=648 >
The patch below renames the set_keyed and get_keyed ops simply to set,
as Jeff suggested, as well as documenting them (slightly). It also
adjusts the tests accordingly. All tests still pass.
Simon
--- core.ops.old Sat Jun 1 15:51:59 2002
+++ core.ops Sat Jun 1 16:44:51 2002
@@ -510,6 +510,62 @@
Set $1 to $2.
+=item B<set>(out PMC, in INT, in INT)
+
+=item B<set>(out PMC, in NUM, in INT)
+
+=item B<set>(out PMC, in STR, in INT)
+
+=item B<set>(out PMC, in INT, in NUM)
+
+=item B<set>(out PMC, in NUM, in NUM)
+
+=item B<set>(out PMC, in STR, in NUM)
+
+=item B<set>(out PMC, in INT, in STR)
+
+=item B<set>(out PMC, in NUM, in STR)
+
+=item B<set>(out PMC, in STR, in STR)
+
+=item B<set>(out PMC, in INT, in PMC)
+
+=item B<set>(out PMC, in NUM, in PMC)
+
+=item B<set>(out PMC, in STR, in PMC)
+
+Set the entry of $1 accessed by $2 to $3, ie:
+
+ $1[$2] = $3;
+
+=item B<set>(out INT, in PMC, in INT)
+
+=item B<set>(out INT, in PMC, in NUM)
+
+=item B<set>(out INT, in PMC, in STR)
+
+=item B<set>(out NUM, in PMC, in INT)
+
+=item B<set>(out NUM, in PMC, in NUM)
+
+=item B<set>(out NUM, in PMC, in STR)
+
+=item B<set>(out STR, in PMC, in INT)
+
+=item B<set>(out STR, in PMC, in NUM)
+
+=item B<set>(out STR, in PMC, in STR)
+
+=item B<set>(out PMC, in PMC, in INT)
+
+=item B<set>(out PMC, in PMC, in NUM)
+
+=item B<set>(out PMC, in PMC, in STR)
+
+Set $1 to the entry of $2 accessed by $3, ie:
+
+ $1 = $2[$3];
+
=cut
inline op set(out INT, in INT) {
@@ -597,84 +653,192 @@
goto NEXT();
}
-inline op get_keyed(out INT, in PMC, in INT) {
+inline op set (out PMC, in INT, in INT) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_int, int_val);
+
+ $1->vtable->set_integer_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in NUM, in INT) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_num, num_val);
+
+ $1->vtable->set_integer_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in STR, in INT) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_string, struct_val);
+
+ $1->vtable->set_integer_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in INT, in NUM) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_int, int_val);
+
+ $1->vtable->set_number_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in NUM, in NUM) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_num, num_val);
+
+ $1->vtable->set_number_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in STR, in NUM) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_string, struct_val);
+
+ $1->vtable->set_number_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in INT, in STR) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_int, int_val);
+
+ $1->vtable->set_string_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in NUM, in STR) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_num, num_val);
+
+ $1->vtable->set_string_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in STR, in STR) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_string, struct_val);
+
+ $1->vtable->set_string_keyed(interpreter, $1, &key, $3);
+ goto NEXT();
+}
+
+inline op set (out PMC, in INT, in PMC) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_int, int_val);
+
+ $1->vtable->set_pmc_keyed(interpreter, $1, &key, $3, NULL);
+ goto NEXT();
+}
+
+inline op set (out PMC, in NUM, in PMC) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_num, num_val);
+
+ $1->vtable->set_pmc_keyed(interpreter, $1, &key, $3, NULL);
+ goto NEXT();
+}
+
+inline op set (out PMC, in STR, in PMC) {
+ KEY key;
+
+ MAKE_KEY(key, $2, enum_key_string, struct_val);
+
+ $1->vtable->set_pmc_keyed(interpreter, $1, &key, $3, NULL);
+ goto NEXT();
+}
+
+inline op set(out INT, in PMC, in INT) {
KEY key;
MAKE_KEY(key, $3, enum_key_int, int_val);
$1 = $2->vtable->get_integer_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out INT, in PMC, in NUM) {
+inline op set(out INT, in PMC, in NUM) {
KEY key;
MAKE_KEY(key, $3, enum_key_num, num_val);
$1 = $2->vtable->get_integer_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out INT, in PMC, in STR) {
+inline op set(out INT, in PMC, in STR) {
KEY key;
MAKE_KEY(key, $3, enum_key_string, struct_val);
$1 = $2->vtable->get_integer_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out NUM, in PMC, in INT) {
+inline op set(out NUM, in PMC, in INT) {
KEY key;
MAKE_KEY(key, $3, enum_key_int, int_val);
$1 = $2->vtable->get_number_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out NUM, in PMC, in NUM) {
+inline op set(out NUM, in PMC, in NUM) {
KEY key;
MAKE_KEY(key, $3, enum_key_num, num_val);
$1 = $2->vtable->get_number_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out NUM, in PMC, in STR) {
+inline op set(out NUM, in PMC, in STR) {
KEY key;
MAKE_KEY(key, $3, enum_key_string, struct_val);
$1 = $2->vtable->get_number_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out STR, in PMC, in INT) {
+inline op set(out STR, in PMC, in INT) {
KEY key;
MAKE_KEY(key, $3, enum_key_int, int_val);
$1 = $2->vtable->get_string_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out STR, in PMC, in NUM) {
+inline op set(out STR, in PMC, in NUM) {
KEY key;
MAKE_KEY(key, $3, enum_key_num, num_val);
$1 = $2->vtable->get_string_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out STR, in PMC, in STR) {
+inline op set(out STR, in PMC, in STR) {
KEY key;
MAKE_KEY(key, $3, enum_key_string, struct_val);
$1 = $2->vtable->get_string_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out PMC, in PMC, in INT) {
+inline op set(out PMC, in PMC, in INT) {
KEY key;
MAKE_KEY(key, $3, enum_key_int, int_val);
$1 = $2->vtable->get_pmc_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out PMC, in PMC, in NUM) {
+inline op set(out PMC, in PMC, in NUM) {
KEY key;
MAKE_KEY(key, $3, enum_key_num, num_val);
$1 = $2->vtable->get_pmc_keyed(interpreter, $2, &key);
goto NEXT();
}
-inline op get_keyed(out PMC, in PMC, in STR) {
+inline op set(out PMC, in PMC, in STR) {
KEY key;
MAKE_KEY(key, $3, enum_key_string, struct_val);
$1 = $2->vtable->get_pmc_keyed(interpreter, $2, &key);
@@ -699,13 +863,16 @@
goto NEXT();
}
-=item B<set_keyed>(out PMC, out PMC, in PMC, in PMC)
+=item B<set>(out PMC, out PMC, in PMC, in PMC)
+
+Set the entry of $1 accessed by $2 to the entry of $3 accessed by
+$4, ie:
$1[$2] = $3[$4];
=cut
-inline op set_keyed (out PMC, in PMC, in PMC, in PMC) {
+inline op set (out PMC, in PMC, in PMC, in PMC) {
KEY src_key, dest_key;
MAKE_KEY(src_key, $2, enum_key_pmc, pmc_val);
@@ -716,114 +883,6 @@
goto NEXT();
}
-inline op set_keyed (out PMC, in INT, in INT) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_int, int_val);
-
- $1->vtable->set_integer_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in NUM, in INT) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_num, num_val);
-
- $1->vtable->set_integer_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in STR, in INT) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_string, struct_val);
-
- $1->vtable->set_integer_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in INT, in NUM) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_int, int_val);
-
- $1->vtable->set_number_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in NUM, in NUM) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_num, num_val);
-
- $1->vtable->set_number_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in STR, in NUM) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_string, struct_val);
-
- $1->vtable->set_number_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in INT, in STR) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_int, int_val);
-
- $1->vtable->set_string_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in NUM, in STR) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_num, num_val);
-
- $1->vtable->set_string_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in STR, in STR) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_string, struct_val);
-
- $1->vtable->set_string_keyed(interpreter, $1, &key, $3);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in INT, in PMC) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_int, int_val);
-
- $1->vtable->set_pmc_keyed(interpreter, $1, &key, $3, NULL);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in NUM, in PMC) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_num, num_val);
-
- $1->vtable->set_pmc_keyed(interpreter, $1, &key, $3, NULL);
- goto NEXT();
-}
-
-inline op set_keyed (out PMC, in STR, in PMC) {
- KEY key;
-
- MAKE_KEY(key, $2, enum_key_string, struct_val);
-
- $1->vtable->set_pmc_keyed(interpreter, $1, &key, $3, NULL);
- goto NEXT();
-}
-
=item B<clone>(out PMC, in PMC)
Copies a PMC $1 to $2.
--- t/pmc/array.t.old Sat Jun 1 15:57:42 2002
+++ t/pmc/array.t Sat Jun 1 16:27:53 2002
@@ -17,20 +17,20 @@
print "not "
OK_2: print "ok 2\n"
- set_keyed P0,0,-7 # set P0[0], -7
- get_keyed I0,P0,0 # set I0, P0[0]
+ set P0,0,-7 # set P0[0], -7
+ set I0,P0,0 # set I0, P0[0]
eq I0,-7,OK_3
print "not "
OK_3: print "ok 3\n"
- set_keyed P0,0,3.7 # set P0[0], 3.7
- get_keyed N0,P0,0 # set N0, P0[0]
+ set P0,0,3.7 # set P0[0], 3.7
+ set N0,P0,0 # set N0, P0[0]
eq N0,3.7,OK_4
print "not "
OK_4: print "ok 4\n"
- set_keyed P0,0,"Buckaroo" # set P0[0], "Buckaroo"
- get_keyed S0,P0,0 # set S0, P0[0]
+ set P0,0,"Buckaroo" # set P0[0], "Buckaroo"
+ set S0,P0,0 # set S0, P0[0]
eq S0,"Buckaroo",OK_5
print "not "
OK_5: print "ok 5\n"
--- t/pmc/perlarray.t.old Sat Jun 1 15:29:55 2002
+++ t/pmc/perlarray.t Sat Jun 1 16:28:18 2002
@@ -29,28 +29,29 @@
output_is(<<'CODE', <<'OUTPUT', "set/get by index");
new P0,.PerlArray
- set_keyed P0,0,3 # set P0[0], 3
- get_keyed I1,P0,0 # set I1, P0[0]
+# set I0, 0
+ set P0[0], 3 # set P0[0], 3
+ set I1, P0[0] # set I1, P0[0]
print I1
print "\n"
set P0,2
- set_keyed P0,1,3.7 # set P0[1], 3.7
- get_keyed N1,P0,1 # set N1, P0[1]
+ set P0,1,3.7 # set P0[1], 3.7
+ set N1,P0,1 # set N1, P0[1]
print N1
print "\n"
set P0,3
- set_keyed P0,2,"hey" # set P0[2], "hey"
- get_keyed S1,P0,2 # set S1, P0[2]
+ set P0,2,"hey" # set P0[2], "hey"
+ set S1,P0,2 # set S1, P0[2]
print S1
print "\n"
set P0, 4
new P1, .PerlInt
set P1, 42
- set_keyed P0,3,P1 # set P0[3], P1
- get_keyed P2,P0,3 # set S1, P0[3]
+ set P0,3,P1 # set P0[3], P1
+ set P2,P0,3 # set S1, P0[3]
print P2
print "\n"
@@ -64,25 +65,25 @@
output_is(<<'CODE', <<'OUTPUT', "same, but with implicit resizing");
new P0,.PerlArray
- set_keyed P0,0,3 # set P0[0], 3
- get_keyed I1,P0,0 # set I1, P0[0]
+ set P0,0,3 # set P0[0], 3
+ set I1,P0,0 # set I1, P0[0]
print I1
print "\n"
- set_keyed P0,1,3.7 # set P0[1], 3.7
- get_keyed N1,P0,1 # set N1, P0[1]
+ set P0,1,3.7 # set P0[1], 3.7
+ set N1,P0,1 # set N1, P0[1]
print N1
print "\n"
- set_keyed P0,2,"hey" # set P0[2], "hey"
- get_keyed S1,P0,2 # set S1, P0[2]
+ set P0,2,"hey" # set P0[2], "hey"
+ set S1,P0,2 # set S1, P0[2]
print S1
print "\n"
new P1, .PerlInt
set P1, 42
- set_keyed P0,3,P1 # set P0[3], P1
- get_keyed P2,P0,3 # set S1, P0[3]
+ set P0,3,P1 # set P0[3], P1
+ set P2,P0,3 # set S1, P0[3]
print P2
print "\n"
@@ -96,20 +97,20 @@
output_is(<<'CODE', <<'OUTPUT', "keys of different types");
new P0, .PerlArray
- set_keyed P0, 5.0, 3
+ set P0, 5.0, 3
set I0, P0
bsr PRINT
- set_keyed P0, "10", 6
+ set P0, "10", 6
set I0, P0
bsr PRINT
- set_keyed P0, 15, 9
+ set P0, 15, 9
set I0, P0
bsr PRINT
- get_keyed I0, P0, 5
+ set I0, P0, 5
bsr PRINT
- get_keyed I0, P0, 10
+ set I0, P0, 10
bsr PRINT
- get_keyed I0, P0, 15
+ set I0, P0, 15
bsr PRINT
end
PRINT:
@@ -132,7 +133,7 @@
branch NEXT
TR: print "true\n"
-NEXT: set_keyed P0, 0, 1 # set P0[0], 1
+NEXT: set P0, 0, 1 # set P0[0], 1
if P0, TR2
print "false\n"
branch NEXT2
@@ -167,104 +168,104 @@
print "not "
OK_1: print "ok 1\n"
- set_keyed P0,0,7 # set P0[0], 7
+ set P0,0,7 # set P0[0], 7
set I0,P0
eq I0,1,OK_2
print "not "
OK_2: print "ok 2\n"
- get_keyed I0,P0,0 # set I0, P0[0]
+ set I0,P0,0 # set I0, P0[0]
eq I0,7,OK_3
print "not "
OK_3: print "ok 3\n"
- get_keyed I0,P0,-1 # set I0, P0[-1]
+ set I0,P0,-1 # set I0, P0[-1]
eq I0,7,OK_4
print "not "
OK_4: print "ok 4\n"
- set_keyed P0,-1,7 # set P0[-1], 7
+ set P0,-1,7 # set P0[-1], 7
set I0,P0
eq I0,1,OK_5
print "not "
OK_5: print "ok 5\n"
- get_keyed I0,P0,0 # set I0, P0[0]
+ set I0,P0,0 # set I0, P0[0]
eq I0,7,OK_6
print "not "
OK_6: print "ok 6\n"
- get_keyed I0,P0,-1 # set I0, P0[-1]
+ set I0,P0,-1 # set I0, P0[-1]
eq I0,7,OK_7
print "not "
OK_7: print "ok 7\n"
- set_keyed P0,0,7.2 # set P0[0], 7.2
+ set P0,0,7.2 # set P0[0], 7.2
set I0,P0
eq I0,1,OK_8
print "not "
OK_8: print "ok 8\n"
- get_keyed N0,P0,0 # set N0, P0[0]
+ set N0,P0,0 # set N0, P0[0]
eq N0,7.2,OK_9
print "not "
OK_9: print "ok 9\n"
- get_keyed N0,P0,-1 # set N0, P0[-1]
+ set N0,P0,-1 # set N0, P0[-1]
eq N0,7.2,OK_10
print "not "
OK_10: print "ok 10\n"
- set_keyed P0,-1,7.2 # set P0[-1], 7.2
+ set P0,-1,7.2 # set P0[-1], 7.2
set I0,P0
eq I0,1,OK_11
print "not "
OK_11: print "ok 11\n"
- get_keyed N0,P0,0 # set N0, PO[0]
+ set N0,P0,0 # set N0, PO[0]
eq N0,7.2,OK_12
print "not "
OK_12: print "ok 12\n"
- get_keyed N0,P0,-1 # set N0, P0[-1]
+ set N0,P0,-1 # set N0, P0[-1]
eq N0,7.2,OK_13
print "not "
OK_13: print "ok 13\n"
- set_keyed P0,0,"Buckaroo" # set P0[0], "Buckaroo"
+ set P0,0,"Buckaroo" # set P0[0], "Buckaroo"
set I0,P0
eq I0,1,OK_14
print "not "
OK_14: print "ok 14\n"
- get_keyed S0,P0,0 # set S0, P0[0]
+ set S0,P0,0 # set S0, P0[0]
eq S0,"Buckaroo",OK_15
print "not "
OK_15: print "ok 15\n"
- get_keyed S0,P0,-1 # set S0, P0[-1]
+ set S0,P0,-1 # set S0, P0[-1]
eq S0,"Buckaroo",OK_16
print "not "
OK_16: print "ok 16\n"
- set_keyed P0,-1,"Buckaroo" # set P0[-1], "Buckaroo"
+ set P0,-1,"Buckaroo" # set P0[-1], "Buckaroo"
set I0,P0
eq I0,1,OK_17
print "not "
OK_17: print "ok 17\n"
- get_keyed S0,P0,0 # set S0, P0[0]
+ set S0,P0,0 # set S0, P0[0]
eq S0,"Buckaroo",OK_18
print "not "
OK_18: print "ok 18\n"
- get_keyed S0,P0,-1 # set S0, P0[-1]
+ set S0,P0,-1 # set S0, P0[-1]
eq S0,"Buckaroo",OK_19
print "not "
OK_19: print "ok 19\n"
--- t/pmc/perlhash.t.old Sat Jun 1 15:56:14 2002
+++ t/pmc/perlhash.t Sat Jun 1 16:28:46 2002
@@ -8,11 +8,11 @@
set S0, "one"
set S1, "two"
- set_keyed P0, S0, 1 # $P0{one} = 1
- set_keyed P0, S1, 2 # $P0{two} = 2
+ set P0, S0, 1 # $P0{one} = 1
+ set P0, S1, 2 # $P0{two} = 2
- get_keyed I0, P0, S0
- get_keyed I1, P0, S1
+ set I0, P0, S0
+ set I1, P0, S1
print I0
print "\n"
@@ -27,14 +27,14 @@
output_is(<<'CODE', <<OUTPUT, "more than one PerlHash");
new P0, .PerlHash
set S0, "key"
- set_keyed P0, S0, 1
+ set P0, S0, 1
new P1, .PerlHash
set S1, "another_key"
- set_keyed P1, S1, 2
+ set P1, S1, 2
- get_keyed I0, P0, S0
- get_keyed I1, P1, S1
+ set I0, P0, S0
+ set I1, P1, S1
print I0
print "\n"
@@ -51,11 +51,11 @@
set S0, "parp\0me"
set S1, "parp\0you"
- set_keyed P0, S0, 1 # $P0{parp\0me} = 1
- set_keyed P0, S1, 2 # $P0{parp\0you} = 2
+ set P0, S0, 1 # $P0{parp\0me} = 1
+ set P0, S1, 2 # $P0{parp\0you} = 2
- get_keyed I0, P0, S0
- get_keyed I1, P0, S1
+ set I0, P0, S0
+ set I1, P0, S1
print I0
print "\n"
@@ -72,11 +72,11 @@
set S0, "a\0"
set S1, "\0a"
- set_keyed P0, S0, 1
- set_keyed P0, S1, 2
+ set P0, S0, 1
+ set P0, S1, 2
- get_keyed I0, P0, S0
- get_keyed I1, P0, S1
+ set I0, P0, S0
+ set I1, P0, S1
print I0
print "\n"
@@ -94,13 +94,13 @@
set S0, "Happy"
set S1, "Happy"
- set_keyed P0, S0, 1
- get_keyed I0, P0, S0
+ set P0, S0, 1
+ set I0, P0, S0
print I0
print "\n"
- set_keyed P0, S1, 2
- get_keyed I1, P0, S1
+ set P0, S1, 2
+ set I1, P0, S1
print I1
print "\n"
@@ -114,17 +114,17 @@
output_is(<<'CODE', <<OUTPUT, "size of the hash");
new P0, .PerlHash
- set_keyed P0, 0, 1
+ set P0, 0, 1
set I0, P0
print I0
print "\n"
- set_keyed P0, 1, 1
+ set P0, 1, 1
set I0, P0
print I0
print "\n"
- set_keyed P0, 0, 1
+ set P0, 0, 1
set I0, P0
print I0
print "\n"
@@ -143,8 +143,8 @@
output_is(<<'CODE', <<OUTPUT, "key that hashes to zero");
new P0, .PerlHash
set S0, "key2"
- set_keyed P0, S0, 1
- get_keyed I0, P0, S0
+ set P0, S0, 1
+ set I0, P0, S0
print I0
print "\n"
end
@@ -155,13 +155,13 @@
output_is(<<CODE, <<OUTPUT, "Initial PerlHash tests");
new P0, .PerlHash
- set_keyed P0, "foo", -7
- set_keyed P0, "bar", 3.5
- set_keyed P0, "baz", "value"
-
- get_keyed I0, P0, "foo"
- get_keyed N0, P0, "bar"
- get_keyed S0, P0, "baz"
+ set P0, "foo", -7
+ set P0, "bar", 3.5
+ set P0, "baz", "value"
+
+ set I0, P0, "foo"
+ set N0, P0, "bar"
+ set S0, P0, "baz"
eq I0,-7,OK_1
print "not "
@@ -185,19 +185,19 @@
set I0, 200
set S0, "mikey"
- set_keyed P0, S0, "base"
+ set P0, S0, "base"
concat S1, S0, "s"
- set_keyed P0, S1, "bases"
+ set P0, S1, "bases"
set S2, I0
concat S1, S0, S2
- set_keyed P0, S1, "start"
- get_keyed S3, P0, "mikey"
+ set P0, S1, "start"
+ set S3, P0, "mikey"
print S3
print "\\n"
- get_keyed S3, P0, "mikeys"
+ set S3, P0, "mikeys"
print S3
print "\\n"
- get_keyed S3, P0, "mikey200"
+ set S3, P0, "mikey200"
print S3
print "\\n"
LOOP:
@@ -213,8 +213,8 @@
print S4
print "\\n"
L1:
- set_keyed P0, S1, I0
- get_keyed I1, P0, S1
+ set P0, S1, I0
+ set I1, P0, S1
eq I0, I1, L2
print "lookup mismatch: "
print I0
@@ -224,19 +224,19 @@
L2:
branch LOOP
DONE:
- get_keyed I0, P0, "mikey199"
+ set I0, P0, "mikey199"
print I0
print "\\n"
- get_keyed I0, P0, "mikey117"
+ set I0, P0, "mikey117"
print I0
print "\\n"
- get_keyed I0, P0, "mikey1"
+ set I0, P0, "mikey1"
print I0
print "\\n"
- get_keyed I0, P0, "mikey23"
+ set I0, P0, "mikey23"
print I0
print "\\n"
- get_keyed I0, P0, "mikey832"
+ set I0, P0, "mikey832"
print I0
print "\\n"
end
@@ -262,7 +262,7 @@
sub I0, I0, 1
set S2, I0
concat S1, S0, S2
- set_keyed P0, S1, I0
+ set P0, S1, I0
branch SETLOOP
set I0, 200
@@ -271,7 +271,7 @@
sub I0, I0, 1
set S2, I0
concat S1, S0, S2
- get_keyed I1, P0, S1
+ set I1, P0, S1
eq I0, I1, L2
print "lookup mismatch: "
print I0