Class [:print_name -status] [:?var :@superclass { - subclass of [:for super ${:@superclass} { [$super name] }] }]

${:name} create obj [:pinfo get -default "" bundle parametersyntax]
[:?var :@see {
See also:${:@see}
}]
[:as_text]
[:? {[:pinfo exists validation]} { [join [:pinfo get validation]] }] [:?var :@class-property { [:!let class_attrs [:!get -sortedby name -with name @class-property]]

Provided Parameters

These parameters can be used to configure instances of this class: [:for attr [dict values $class_attrs] { [:!let depr [expr {[$attr !get @deprecated]?"deprecated":""}]] [$attr print_name] }]

[:for attr [dict values $class_attrs] { [:!let depr [expr {[$attr !get @deprecated]?"deprecated":""}]]

[$attr print_name -status]

[:? {[$attr pinfo exists validation]} { [$attr pinfo get validation] }] [$attr as_text]
[:?objvar $attr default {
Default Value: $default
}] [:? {[$attr eval {info exists :deprecated}]} {
Deprecated: [$attr default]
}]
}]
}] [:!let iattrs [:inherited @class-property]] [:? {$iattrs ne ""} {
[:for superclass [dict keys $iattrs] { [:!let attrs [dict values [dict get $iattrs $superclass]]]

Inherited Parameters from [$superclass name]:

[:for a $attrs { [:!let depr [expr {[$a !get @deprecated]?"deprecated":""}]] [$a name] }]
}]
}] [:?var :@object-property {

Per-object parameters

[:for attr ${:@object-property} { [:!let depr [expr {[$attr !get @deprecated]?"deprecated":""}]]

[$attr name]

[$attr as_text]
[:? {[$attr eval {info exists :default}]} {
Default Value: [$attr default]
}] [:? {[$attr eval {info exists :deprecated}]} {
Deprecated: [$attr]
}]
}]
}] [:?var :@class-method { [:!let class_methods [:!get -sortedby name @class-method]]

Provided Methods

[:for m $class_methods { [:!let modifier [expr {[$m pinfo get -default 0 bundle call-protected]?"protected":""}]] [:!let depr [expr {[$m !get @deprecated]?"deprecated":""}]] [$m name] }]

[:for method $class_methods { [:? {[info exists class_attrs] && [dict exists $class_attrs [$method name]]} { [$method render -initscript [list set owning_attribute [dict get $class_attrs [$method name]]] attributemethod] } - { [$method render] }] }]
}] [:!let imethods [:inherited @class-method]] [:? {$imethods ne ""} {
[:for superclass [dict keys $imethods] { [:!let ms [dict values [dict get $imethods $superclass]]]

Inherited Methods from [$superclass name]:

[:for m $ms { [:!let depr [expr {[$m !get @deprecated]?"deprecated":""}]] [$m name] }]
}]
}] [:?var :@object-method { [:!let omethods [:!get -sortedby name @object-method]]

Per-object methods

[:for m $omethods { [:!let depr [expr {[$m !get @deprecated]?"deprecated":""}]] [$m name] }]

[:for omethod $omethods { [$omethod render] }]
}] [:!let hooks [:!get -sortedby name @class-hook]] [:? {[llength $hooks] > 0} {

Hook methods

[:for m $hooks { [:!let modifier [expr {[$m pinfo get -default 0 bundle call-protected]?"protected":""}]] [:!let depr [expr {[$m !get @deprecated]?"deprecated":""}]] [$m name] }]

[:for method $hooks { [$method render hookmethod] }]
}]