Index: doc/next-migration.html =================================================================== diff -u -r2f7d2e507326a689d70c580f4cf8c4c82c420bac -r21e04cc3b201da5acfc77f7b05308f1ddfa606dc --- doc/next-migration.html (.../next-migration.html) (revision 2f7d2e507326a689d70c580f4cf8c4c82c420bac) +++ doc/next-migration.html (.../next-migration.html) (revision 21e04cc3b201da5acfc77f7b05308f1ddfa606dc) @@ -3622,16 +3622,19 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-comment'># Register per-class mixin and guard for +<pre class='nx'><span class='nx-comment'># Register/clear per-class mixin and guard for </span><span class='nx-comment'># a class </span> -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>mixin</span> add|<span class='nx-keyword'>set</span>|clear ... -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>mixin</span> <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>mixin</span>/ <span class='nx-placeholder'>?condition?</span> +<span class='nx-placeholder'>/cls/</span> mixins add|<span class='nx-keyword'>set</span>|clear ... +<span class='nx-placeholder'>/cls/</span> mixins <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>mixin</span>/ <span class='nx-placeholder'>?condition?</span> <span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>configure</span> -mixin ... -<span class='nx-comment'># Query per-class mixin -</span><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>mixin</span> get -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>cget</span> -mixin</pre></div></div></div></td> +<span class='nx-comment'># Query per-class mixins +</span><span class='nx-placeholder'>/cls/</span> mixins get +<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>cget</span> -mixins + +<span class='nx-comment'># Query per-class mixins (without guards) +</span><span class='nx-placeholder'>/cls/</span> mixins classes</pre></div></div></div></td> </tr> <tr> <td align="left" valign="middle"><div><div class="listingblock"> @@ -3648,7 +3651,7 @@ <pre class='nx'><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>mixin</span> ... <span class='nx-placeholder'>/obj/</span> mixinguard /<span class='nx-keyword'>mixin</span>/ <span class='nx-placeholder'>?condition?</span> -<span class='nx-comment'># Query per-object mixin +<span class='nx-comment'># Query per-object mixins </span><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>mixin</span></pre></div></div></div></td> <td align="left" valign="middle"><div><div class="listingblock"> <div class="content"><style type='text/css'> @@ -3661,16 +3664,19 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-comment'># Register per-object mixin and guard for +<pre class='nx'><span class='nx-comment'># Register/clear per-object mixin and guard for </span><span class='nx-comment'># an object </span> -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>mixin</span> add|<span class='nx-keyword'>set</span>|clear ... -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>mixin</span> <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>mixin</span>/ <span class='nx-placeholder'>?condition?</span> -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>configure</span> -object-mixin ... +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> mixins add|<span class='nx-keyword'>set</span>|clear ... +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> mixins <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>mixin</span>/ <span class='nx-placeholder'>?condition?</span> +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>configure</span> -object-mixins ... <span class='nx-comment'># Query per-object mixin -</span><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>mixin</span> get -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>cget</span> -object-mixin</pre></div></div></div></td> +</span><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> mixins get +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>cget</span> -object-mixin + +<span class='nx-comment'># Query per-object mixins (without guards) +</span><span class='nx-placeholder'>/cls/</span> mixins classes</pre></div></div></div></td> </tr> </tbody> </table> @@ -3722,16 +3728,19 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-comment'># Register per-class filter and guard for +<pre class='nx'><span class='nx-comment'># Register/clear per-class filter and guard for </span><span class='nx-comment'># a class </span> -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>filter</span> add|<span class='nx-keyword'>set</span>|clear ... -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>filter</span> <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>filter</span>/ <span class='nx-placeholder'>?condition?</span> -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>configure</span> -filter ... +<span class='nx-placeholder'>/cls/</span> filters add|<span class='nx-keyword'>set</span>|clear ... +<span class='nx-placeholder'>/cls/</span> filters <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>filter</span>/ <span class='nx-placeholder'>?condition?</span> +<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>configure</span> -filters ... -<span class='nx-comment'># Query per-class filter -</span><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>filter</span> get -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>cget</span> -filter</pre></div></div></div></td> +<span class='nx-comment'># Query per-class filters +</span><span class='nx-placeholder'>/cls/</span> filters get +<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>cget</span> -filters + +<span class='nx-comment'># Query per-class filters (without guards) +</span><span class='nx-placeholder'>/cls/</span> filters <span class='nx-keyword'>methods</span></pre></div></div></div></td> </tr> <tr> <td align="left" valign="middle"><div><div class="listingblock"> @@ -3758,16 +3767,19 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-comment'># Register per-object filter and guard for +<pre class='nx'><span class='nx-comment'># Register(clear per-object filter and guard for </span><span class='nx-comment'># an object </span> -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>filter</span> add|<span class='nx-keyword'>set</span>|clear ... -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>filter</span> <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>filter</span>/ <span class='nx-placeholder'>?condition?</span> -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>configure</span> -object-filter ... +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> filters add|<span class='nx-keyword'>set</span>|clear ... +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>object</span> filters <span class='nx-keyword'>guard</span> /<span class='nx-keyword'>filter</span>/ <span class='nx-placeholder'>?condition?</span> +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>configure</span> -object-filters ... -<span class='nx-comment'># Query per-object filter -</span><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>filter</span> get -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>cget</span> -object-filter</pre></div></div></div></td> +<span class='nx-comment'># Query per-object filters +</span><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>object</span> filters get +<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>cget</span> -object-filters + +<span class='nx-comment'># Query per-object filters (without guards) +</span><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>object</span> filters <span class='nx-keyword'>methods</span></pre></div></div></div></td> </tr> </tbody> </table> @@ -3789,7 +3801,82 @@ syntax</code>. In addition, NX provides means to query the type of a method, and NX allows to filter by the type of the method.</p></div> <div class="sect3"> -<h4 id="_list_methods_defined_by_classes">2.6.1. List methods defined by classes</h4> +<h4 id="_list_sub_and_superclass_relations">2.6.1. List sub- and superclass relations</h4> +<div class="paragraph"><p>While XOTcl used singular words for introspecting sub- and superclass +relations, NX uses plural word to indicate that potentially a list of +values is returned.</p></div> +<div class="tableblock"> +<table rules="all" +width="100%" +frame="void" +cellspacing="0" cellpadding="4"> +<col width="50%" /> +<col width="50%" /> +<thead> +<tr> +<th align="left" valign="middle">XOTcl </th> +<th align="left" valign="middle">Next Scripting Language</th> +</tr> +</thead> +<tbody> +<tr> +<td align="left" valign="middle"><div><div class="listingblock"> +<div class="content"><style type='text/css'> +.nx {color: #000000; font-weight: normal; font-style: normal; padding-left: 10px} +table.nx {border-collapse: collapse; border-spacing: 3px;} +.nx-linenr {border-right: 1px solid #DDDDDD;padding-right: 5px; color: #2B547D;font-style: italic;} +.nx-string {color: #779977; font-weight: normal; font-style: italic;} +.nx-comment {color: #717ab3; font-weight: normal; font-style: italic;} +.nx-keyword {color: #7f0055; font-weight: normal; font-style: normal;} +.nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} +.nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} +</style> +<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>superclass</span> <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> +<td align="left" valign="middle"><div><div class="listingblock"> +<div class="content"><style type='text/css'> +.nx {color: #000000; font-weight: normal; font-style: normal; padding-left: 10px} +table.nx {border-collapse: collapse; border-spacing: 3px;} +.nx-linenr {border-right: 1px solid #DDDDDD;padding-right: 5px; color: #2B547D;font-style: italic;} +.nx-string {color: #779977; font-weight: normal; font-style: italic;} +.nx-comment {color: #717ab3; font-weight: normal; font-style: italic;} +.nx-keyword {color: #7f0055; font-weight: normal; font-style: normal;} +.nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} +.nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} +</style> +<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> superclasses <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> +</tr> +<tr> +<td align="left" valign="middle"><div><div class="listingblock"> +<div class="content"><style type='text/css'> +.nx {color: #000000; font-weight: normal; font-style: normal; padding-left: 10px} +table.nx {border-collapse: collapse; border-spacing: 3px;} +.nx-linenr {border-right: 1px solid #DDDDDD;padding-right: 5px; color: #2B547D;font-style: italic;} +.nx-string {color: #779977; font-weight: normal; font-style: italic;} +.nx-comment {color: #717ab3; font-weight: normal; font-style: italic;} +.nx-keyword {color: #7f0055; font-weight: normal; font-style: normal;} +.nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} +.nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} +</style> +<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> subclass <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> +<td align="left" valign="middle"><div><div class="listingblock"> +<div class="content"><style type='text/css'> +.nx {color: #000000; font-weight: normal; font-style: normal; padding-left: 10px} +table.nx {border-collapse: collapse; border-spacing: 3px;} +.nx-linenr {border-right: 1px solid #DDDDDD;padding-right: 5px; color: #2B547D;font-style: italic;} +.nx-string {color: #779977; font-weight: normal; font-style: italic;} +.nx-comment {color: #717ab3; font-weight: normal; font-style: italic;} +.nx-keyword {color: #7f0055; font-weight: normal; font-style: normal;} +.nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} +.nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} +</style> +<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> subclasses -type setter <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> +</tr> +</tbody> +</table> +</div> +</div> +<div class="sect3"> +<h4 id="_list_methods_defined_by_classes">2.6.2. List methods defined by classes</h4> <div class="paragraph"><p>While XOTcl uses different names for obtaining different kinds of methods defined by a class, NX uses <code>info methods</code> in an orthogonal manner. NX allows as well to use the call protection to filter the @@ -3920,7 +4007,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_methods_defined_by_objects">2.6.2. List methods defined by objects</h4> +<h4 id="_list_methods_defined_by_objects">2.6.3. List methods defined by objects</h4> <div class="paragraph"><p>While XOTcl uses different names for obtaining different kinds of methods defined by an object, NX uses <code>info methods</code> in an orthogonal manner. NX allows as well to use the call protection to filter the @@ -4051,7 +4138,7 @@ </div> </div> <div class="sect3"> -<h4 id="_check_existence_of_a_method">2.6.3. Check existence of a method</h4> +<h4 id="_check_existence_of_a_method">2.6.4. Check existence of a method</h4> <div class="paragraph"><p>NX provides multiple ways of checking, whether a method exists; one can use <code>info method exists</code> to check, if a given method exists (return boolean), or one can use <code>info methods ?pattern?</code>, where @@ -4109,7 +4196,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_callable_methods">2.6.4. List callable methods</h4> +<h4 id="_list_callable_methods">2.6.5. List callable methods</h4> <div class="paragraph"><p>In order to obtain for an object the set of artefacts defined in the class hierarchy, NX uses <code>info lookup</code>. One can either lookup methods (via <code>info lookup methods</code>) or slots (via <code>info lookup slots</code>). The @@ -4289,7 +4376,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_object_class_where_a_specified_method_is_defined">2.6.5. List object/class where a specified method is defined</h4> +<h4 id="_list_object_class_where_a_specified_method_is_defined">2.6.6. List object/class where a specified method is defined</h4> <div class="paragraph"><p><code>info lookup</code> can be used as well to determine, where exactly an artefact is located. One can obtain this way a method handle, where a method or filter is defined.</p></div> @@ -4369,7 +4456,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_definition_of_scripted_methods">2.6.6. List definition of scripted methods</h4> +<h4 id="_list_definition_of_scripted_methods">2.6.7. List definition of scripted methods</h4> <div class="paragraph"><p>XOTcl contains a long list of <code>info</code> subcommands for different kinds of methods and for obtaining more detailed information about these methods.</p></div> @@ -4644,7 +4731,7 @@ </div> </div> <div class="sect3"> -<h4 id="info_configure_parameter">2.6.7. List Configure Parameters</h4> +<h4 id="info_configure_parameter">2.6.8. List Configure Parameters</h4> <div class="paragraph"><p>The way, how newly created objects can be configured is determined in NX via properties. The configuration happens during creation via the methods <code>create</code> or <code>new</code> or during runtime via <code>configure</code>. These @@ -4724,7 +4811,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_variable_declarations_property_and_variable">2.6.8. List Variable Declarations (property and variable)</h4> +<h4 id="_list_variable_declarations_property_and_variable">2.6.9. List Variable Declarations (property and variable)</h4> <div class="tableblock"> <table rules="all" width="100%" @@ -4791,7 +4878,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_slots">2.6.9. List Slots</h4> +<h4 id="_list_slots">2.6.10. List Slots</h4> <div class="tableblock"> <table rules="all" width="100%" @@ -4861,11 +4948,10 @@ </div> </div> <div class="sect3"> -<h4 id="_list_filter_or_mixins">2.6.10. List Filter or Mixins</h4> -<div class="paragraph"><p>In NX all introspection options for filters are grouped under <code>info -filter</code> and all introspection options for mixins are under <code>info -mixin</code>. Therefore, NX follows here the approach of using hierarchical -subcommands rather than using a flat namespace.</p></div> +<h4 id="_list_filter_or_mixins">2.6.11. List Filter or Mixins</h4> +<div class="paragraph"><p>In NX all introspection options for filters are provided via +<code>info filters</code> and all introspection options for mixins are +provided via <code>info mixins</code>.</p></div> <div class="tableblock"> <table rules="all" width="100%" @@ -4905,9 +4991,8 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>filter</span> <span class='nx-keyword'>methods</span> \ - <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span> -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>filter</span> <span class='nx-keyword'>guard</span> <span class='nx-placeholder'>/name/</span></pre></div></div></div></td> +<pre class='nx'><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>object</span> filters \ + <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> </tr> <tr> <td align="left" valign="middle"><div><div class="listingblock"> @@ -4935,9 +5020,8 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>filter</span> <span class='nx-keyword'>methods</span> \ - <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span> -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>filter</span> <span class='nx-keyword'>guard</span> <span class='nx-placeholder'>/name/</span></pre></div></div></div></td> +<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> filters \ + <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> </tr> <tr> <td align="left" valign="middle"><div><div class="listingblock"> @@ -4964,9 +5048,8 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>mixin</span> classes \ - <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span> -<span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>object</span> <span class='nx-keyword'>mixin</span> <span class='nx-keyword'>guard</span> <span class='nx-placeholder'>/name/</span></pre></div></div></div></td> +<pre class='nx'><span class='nx-placeholder'>/obj/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>object</span> mixins \ + <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> </tr> <tr> <td align="left" valign="middle"><div><div class="listingblock"> @@ -4994,16 +5077,15 @@ .nx-placeholder {color: #AF663F; font-weight: normal; font-style: italic;} .nx-variable {color: #AF663F; font-weight: normal; font-style: normal;} </style> -<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>mixin</span> classes \ - <span class='nx-placeholder'>?-closure?</span> <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?pattern?</span> -<span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> <span class='nx-keyword'>mixin</span> <span class='nx-keyword'>guard</span> <span class='nx-placeholder'>/name/</span></pre></div></div></div></td> +<pre class='nx'><span class='nx-placeholder'>/cls/</span> <span class='nx-keyword'>info</span> mixins \ + <span class='nx-placeholder'>?-closure?</span> <span class='nx-placeholder'>?-guards?</span> <span class='nx-placeholder'>?-heritage?</span> <span class='nx-placeholder'>?pattern?</span></pre></div></div></div></td> </tr> </tbody> </table> </div> </div> <div class="sect3"> -<h4 id="_list_definition_of_methods_defined_by_aliases_setters_or_forwarders">2.6.11. List definition of methods defined by aliases, setters or forwarders</h4> +<h4 id="_list_definition_of_methods_defined_by_aliases_setters_or_forwarders">2.6.12. List definition of methods defined by aliases, setters or forwarders</h4> <div class="paragraph"><p>As mentioned earlier, <code>info method definition</code> can be used on every kind of method. The same call can be used to obtain the definition of a scripted method, a method-alias, a forwarder or a setter method.</p></div> @@ -5053,7 +5135,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_method_handles">2.6.12. List Method-Handles</h4> +<h4 id="_list_method_handles">2.6.13. List Method-Handles</h4> <div class="paragraph"><p>NX supports <em>method-handles</em> to provide means to obtain further information about a method or to change maybe some properties of a method. When a method is created, the method creating method returns @@ -5124,7 +5206,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_type_of_a_method">2.6.13. List type of a method</h4> +<h4 id="_list_type_of_a_method">2.6.14. List type of a method</h4> <div class="paragraph"><p>The method <code>info ?object? method type</code> is new in NX to obtain the type of the specified method.</p></div> <div class="tableblock"> @@ -5173,7 +5255,7 @@ </div> </div> <div class="sect3"> -<h4 id="_list_the_scope_of_mixin_classes">2.6.14. List the scope of mixin classes</h4> +<h4 id="_list_the_scope_of_mixin_classes">2.6.15. List the scope of mixin classes</h4> <div class="paragraph"><p>NX provides a richer set of introspection options to obtain information, where mixins classes are mixed into.</p></div> <div class="tableblock"> @@ -5296,7 +5378,7 @@ </div> </div> <div class="sect3"> -<h4 id="_check_properties_of_object_and_classes">2.6.15. Check properties of object and classes</h4> +<h4 id="_check_properties_of_object_and_classes">2.6.16. Check properties of object and classes</h4> <div class="paragraph"><p>Similar as noted before, NX uses rather a hierarchical approach of naming using multiple layers of subcommands).</p></div> <div class="tableblock"> @@ -5515,7 +5597,7 @@ </div> </div> <div class="sect3"> -<h4 id="_call_stack_introspection">2.6.16. Call-stack Introspection</h4> +<h4 id="_call_stack_introspection">2.6.17. Call-stack Introspection</h4> <div class="paragraph"><p>Call-stack introspection is very similar in NX and XOTcl. NX uses for subcommand the term <code>current</code> instead of <code>self</code>, since <code>self</code> has a strong connotation to the current object. The term <code>proc</code> is renamed @@ -6304,7 +6386,7 @@ alter all object/class relations (including class/superclass/object-mixin/…) <code>nsf::relation::set</code>. The class and superclass can be certainly queried -in all variants with <code>info class</code> or <code>info superclass</code>.</p></div> +in all variants with <code>info class</code> or <code>info superclasses</code>.</p></div> <div class="listingblock"> <div class="content"><style type='text/css'> .nx {color: #000000; font-weight: normal; font-style: normal; padding-left: 10px} @@ -6335,7 +6417,7 @@ <div class="sect3"> <h4 id="_info_heritage">3.2.5. Info heritage</h4> <div class="paragraph"><p><code>info heritage</code> returns in XOTcl 1 the transitive superclass -hierarchy, which is equivalent with <code>info superclass -closure</code> and +hierarchy, which is equivalent with <code>info superclasses -closure</code> and therefore not necessary. In XOTcl 2 (and NX), <code>info heritage</code> includes as well the transitive per-class mixins.</p></div> </div> @@ -6384,7 +6466,7 @@ <div id="footer"> <div id="footer-text"> Version 2.0b5<br /> -Last updated 2014-09-11 20:14:03 CEST +Last updated 2014-09-22 14:23:47 CEST </div> </div> </body>