1.1 --- a/templates/native/introspection.c Sun Mar 19 00:56:43 2017 +0100
1.2 +++ b/templates/native/introspection.c Fri Mar 24 22:39:37 2017 +0100
1.3 @@ -29,7 +29,7 @@
1.4 __attr __fn_native_introspection_object_getattr(__attr __self, __attr obj, __attr name, __attr _default)
1.5 {
1.6 /* name interpreted as string */
1.7 - __attr key = __load_via_object(name.value, __key__);
1.8 + __attr key = __load_via_object(__VALUE(name), __key__);
1.9 __attr out;
1.10
1.11 if ((key.code == 0) && (key.pos == 0))
1.12 @@ -37,18 +37,18 @@
1.13
1.14 /* Attempt to get the attribute from the object. */
1.15
1.16 - out = __check_and_load_via_object_null(obj.value, key.pos, key.code);
1.17 - if (out.value == 0)
1.18 + out = __check_and_load_via_object_null(__VALUE(obj), key.pos, key.code);
1.19 + if (__ISNULL(out))
1.20 {
1.21 /* Inspect the object's class if this failed. */
1.22
1.23 - out = __check_and_load_via_class__(obj.value, key.pos, key.code);
1.24 - if (out.value == 0)
1.25 + out = __check_and_load_via_class__(__VALUE(obj), key.pos, key.code);
1.26 + if (__ISNULL(out))
1.27 return _default;
1.28
1.29 /* Update the context to the object if it is a method. */
1.30
1.31 - return __update_context(obj.value, out);
1.32 + return __update_context(obj, out);
1.33 }
1.34
1.35 return out;
1.36 @@ -57,7 +57,7 @@
1.37 __attr __fn_native_introspection_isinstance(__attr __self, __attr obj, __attr cls)
1.38 {
1.39 /* cls must be a class. */
1.40 - if (__is_instance_subclass(obj.value, cls))
1.41 + if (__is_instance_subclass(__VALUE(obj), cls))
1.42 return __builtins___boolean_True;
1.43 else
1.44 return __builtins___boolean_False;
1.45 @@ -66,7 +66,7 @@
1.46 __attr __fn_native_introspection_issubclass(__attr __self, __attr obj, __attr cls)
1.47 {
1.48 /* obj and cls must be classes. */
1.49 - if (__is_subclass(obj.value, cls))
1.50 + if (__is_subclass(__VALUE(obj), cls))
1.51 return __builtins___boolean_True;
1.52 else
1.53 return __builtins___boolean_False;