It doesn't seem like the GodotObject protocol has any reason to exist. This patch removes it.
The protocol has no requirements.
There is exactly one directly conforming type: Object. All
descendants of Object inherit the conformance, but any constraint
requiring GodotObject conformance can be rewritten to instead
require Object inheritance.
There are three functions with GodotObject constraints:
VariantStorable.makeOrUnwrap
Variant.asObject
lookupObject
All test cases pass if I change these constraints to require Object
inheritance instead of GodotObject conformance.
It doesn't seem like the GodotObject protocol has any reason to exist. This patch removes it.
The protocol has no requirements.
There is exactly one directly conforming type: Object. All descendants of Object inherit the conformance, but any constraint requiring GodotObject conformance can be rewritten to instead require Object inheritance.
There are three functions with GodotObject constraints:
VariantStorable.makeOrUnwrap
Variant.asObject
lookupObject
All test cases pass if I change these constraints to require Object inheritance instead of GodotObject conformance.