[:!let modifier [expr {[:pinfo get -default 0 bundle call-protected]?"protected":""}]] [:!let depr [expr {[:!get @deprecated]?"deprecated":""}]]
[:!let status [:statusmark]] [:!let paramspec [:pinfo get -default "" bundle parametersyntax]] [:? {[:statustoken] eq "extra"} { [:!let status ""] [:!let paramspec "args"] }]

[:print_name]$status

[:? {[info exists :@return] && [${:@return} @spec] ne ""} {<[${:@return} @spec]>} ] obj ${:name} $paramspec
[:as_text]
[:?var :@parameter {
Parameters:
[:for param [:!get @parameter] {
[$param print_name] [:? {[$param eval {info exists :@spec}] && [$param @spec] ne ""} {<[$param @spec]>}] [:? {[:statustoken] ne "extra"} { [$param statusmark] }] [$param as_text] [join [$param pinfo get -default "" validation]] [:? {[$param eval {info exists :default}]} {
Default Value: [$param default]
}]
}]
}] [:?var :@return {
Returns: [:!let ret [:!get @return]] [:? {[$ret eval {info exists :@spec}] && [$ret @spec] ne ""} {[$ret @spec]}]
[join [$ret pinfo get -default "" validation]] [$ret as_text]
}] [:? {[:!get @deprecated]} {
Deprecated
}]
Type:
[:? {[:statustoken] eq "extra"} {
deferred implementation, lazily registrable as a method
} - {
[:pinfo get bundle type]
}]
internally called, redefinable hook
[:? {[:pinfo get -default 0 bundle redefine-protected]} {
Protection:
redefine-protected
}]