Objects can have a parent object. The child object inherits the properties of its parent. This is very useful because it gives us access to a lot more inspectors. For example, the parent of file line is string. So we can make use of all the string inspectors with a file line object.
- Q: substrings separated by "," of lines of file "c:\temp\file.txt"
- A: Hello
- A: world.
The inherited properties are not listed in the usual documentation nor are they returned by the
properties of type introspector. These are the properties of the file line, as you can see there's no
substrings separated by:
- Q: properties of type "file line"
- A: line number of <file line>: integer
- A: previous line of <file line>: file line
- A: next line of <file line>: file line
You can view the parent of an object using an introspector called
parent of type:
- Q: parent of type "file line"
- A: string
You can see the inherited properties by introspecting the parent:
- Q: properties of parent of type "file line"
- A: concatenations <html> of <string>: html
- A: html tag <string> of <string>: html
- A: html of <string>: html
- A: ...
Finally, you can use use the
parent of type introspector to find all the objects that have a parent:
- Q: types whose (exists parent of it)
- A: application
- A: client
- A: ...