feat: add Class.supertype primitive and documentation for retrieving superclass

Implement a new `supertype` property on Class objects that returns the superclass of a given class. The primitive `class_supertype` checks if the class has a superclass (returning null for Object) and returns the superclass object. Includes documentation in the class reference and a test file verifying behavior for explicit superclasses, implicit Object inheritance, and Object's null supertype.
This commit is contained in:
Bob Nystrom
2015-03-14 16:48:45 +00:00
parent 3c44a3a001
commit 8436ead62e
3 changed files with 46 additions and 0 deletions
+20
View File
@@ -4,3 +4,23 @@
### **name**
The name of the class.
### **supertype**
The superclass of this class.
:::dart
class Crustacean {}
class Crab is Crustacean {}
IO.print(Crab.supertype) // "Crustacean"
A class with no explicit superclass implicitly inherits Object:
:::dart
IO.print(Crustacean.supertype) // "Object"
Object forms the root of the class hierarchy and has no supertype:
:::dart
IO.print(Object.supertype) // "null"