1 ********** static string **********
2 Handled 2: Argument 1 to f1() must be of type @?StringishObject, string given
3 false, false, string(15) "a boring string"
5 Handled 2: Argument 1 to f2() must be of type @StringishObject, string given
6 false, false, string(15) "a boring string"
8 ********** dynamic string **********
9 Handled 2: Argument 1 to f1() must be of type @?StringishObject, string given
10 false, false, string(11) "hello world"
12 Handled 2: Argument 1 to f2() must be of type @StringishObject, string given
13 false, false, string(11) "hello world"
15 ********** explicit implements **********
16 true, true, object(CExplicit) (0) {
19 true, true, object(CExplicit) (0) {
22 ********** implicit implements **********
23 true, true, object(CImplicit) (0) {
26 true, true, object(CImplicit) (0) {
29 ********** via trait implements **********
30 true, true, object(CThruTrait) (0) {
33 true, true, object(CThruTrait) (0) {
36 ********** null **********
39 Handled 2: Argument 1 to f2() must be of type @StringishObject, null given
42 ********** array **********
43 Handled 2: Argument 1 to f1() must be of type @?StringishObject, HH\vec given
44 false, false, vec(3) {
50 Handled 2: Argument 1 to f2() must be of type @StringishObject, HH\vec given
51 false, false, vec(3) {
57 ********** number **********
58 Handled 2: Argument 1 to f1() must be of type @?StringishObject, int given
61 Handled 2: Argument 1 to f2() must be of type @StringishObject, int given
64 Handled 2: Argument 1 to f1() must be of type @?StringishObject, float given
65 false, false, float(-4.2)
67 Handled 2: Argument 1 to f2() must be of type @StringishObject, float given
68 false, false, float(-4.2)
71 -------------------- test_reflection --------------------
79 string(15) "StringishObject"
88 string(15) "StringishObject"
97 string(15) "StringishObject"
106 string(15) "StringishObject"
107 string(9) "Stringish"
115 string(15) "StringishObject"
116 string(9) "Stringish"