Index: apps/utils/nxdoc =================================================================== diff -u -N -r263cd750f41d98badaae2b2d06bb2ea58feb99e4 -r2942adcd513865cf3f510dfddf774e4c73a4f11d --- apps/utils/nxdoc (.../nxdoc) (revision 263cd750f41d98badaae2b2d06bb2ea58feb99e4) +++ apps/utils/nxdoc (.../nxdoc) (revision 2942adcd513865cf3f510dfddf774e4c73a4f11d) @@ -31,7 +31,7 @@ :property excludes :property indexfiles:alias - :protected property sources:1..* { + :property -accessor protected sources:1..* { set :incremental 1 set :config false } Index: library/lib/nxdoc-core.tcl =================================================================== diff -u -N -r263cd750f41d98badaae2b2d06bb2ea58feb99e4 -r2942adcd513865cf3f510dfddf774e4c73a4f11d --- library/lib/nxdoc-core.tcl (.../nxdoc-core.tcl) (revision 263cd750f41d98badaae2b2d06bb2ea58feb99e4) +++ library/lib/nxdoc-core.tcl (.../nxdoc-core.tcl) (revision 2942adcd513865cf3f510dfddf774e4c73a4f11d) @@ -620,7 +620,7 @@ :property -class ::nx::doc::SwitchAttribute @deprecated:boolean { set :default 0 } - :property -class ::nx::doc::SwitchAttribute @stashed:boolean { + :property -accessor protected -class ::nx::doc::SwitchAttribute @stashed:boolean { set :default 0 } :property -class ::nx::doc::SwitchAttribute @c-implemented:boolean { @@ -773,7 +773,7 @@ } # Note: The default "" corresponds to the top-level namespace "::"! - :property {@namespace ""} + :property -accessor public {@namespace ""} :property -class ::nx::doc::PartAttribute @class { :pretty_name "Class" @@ -2293,7 +2293,7 @@ set handle [::nsf::dispatch $obj \ ::nsf::methods::${scope}::info::method \ - handle $leg] + definitionhandle $leg] if {![::nsf::var::exists [::nsf::current class] handles] || ![[::nsf::current class] eval [concat dict exists \${:handles} $handle]]} { dict set bundle handle $handle dict set bundle handleinfo [::nx::doc::handleinfo $handle] @@ -2326,7 +2326,16 @@ } ::interp invokehidden "" proc ::nx::doc::handleinfo {handle} { - set definition [::nsf::dispatch ${::nx::doc::rootns}::__Tracer ::nsf::methods::object::info::method definition $handle] + + if {[::nsf::is object,type=::nx::Slot $handle]} { + set definition [$handle definition] + } else { + set definition [::nsf::dispatch ${::nx::doc::rootns}::__Tracer ::nsf::methods::object::info::method definition $handle] + } + # TODO: + # puts stderr handle=$handle,def=$definition + #set scope "" + #set obj $handle if {$definition ne ""} { set obj [lindex $definition 0] set modifier [lindex $definition 2] @@ -2341,8 +2350,11 @@ set scope "" set name [lindex $definition 3] } + } else { + return } - if {$scope eq ""} { + + if {[info exists scope] && $scope eq ""} { set is_method 0 set obj [concat {*}[split [string trimleft $obj :] "::"]] foreach label $obj { Index: library/lib/nxdoc-xodoc.tcl =================================================================== diff -u -N -r187fbd20a453ae9d73e9b48f88b8d6a8c79685c2 -r2942adcd513865cf3f510dfddf774e4c73a4f11d --- library/lib/nxdoc-xodoc.tcl (.../nxdoc-xodoc.tcl) (revision 187fbd20a453ae9d73e9b48f88b8d6a8c79685c2) +++ library/lib/nxdoc-xodoc.tcl (.../nxdoc-xodoc.tcl) (revision 2942adcd513865cf3f510dfddf774e4c73a4f11d) @@ -22,11 +22,11 @@ # MetaClassToken n/a Class create MetadataToken { - :class property analyzer + :object property -accessor public analyzer :public forward analyzer [current] %method :method as {partof:object,type=::nx::doc::StructuredEntity} \ -returns object,type=::nx::doc::Entity { - error "Subclass responsibility" + error "Subclass responsibility" } :public method emit {partof:object,type=::nx::doc::StructuredEntity} \ -returns object,type=::nx::doc::Entity {