Trace (Arraylist subroutine): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (match syntax diagram to template and fix tags)
Line 1: Line 1:
{{Template:Arraylist:Trace subtitle}}
{{Template:Arraylist:Trace subtitle}}


This subroutine displays the contents of
The <var>Trace</var> subroutine displays the contents of an <var>Arraylist</var> in a readable form on the currently selected trace stream, useful for debugging, for example.  The listed item values are displayed in ascending order by their position and, by default, are preceded by their item number, a colon (<code>':'</code>) and a blank.
an <var>Arraylist</var> in a readable form, useful for debugging, for
<p><var>Trace</var> is identical to <var>[[Audit (Arraylist subroutine)|Audit]]</var> and <var>[[Print (Arraylist subroutine)|Print]]</var>, except their output is sent to the <var class="product">Model 204</var> audit trail (like the User Language <var>Audit</var> statement) and user's standard output (terminal) destinations respectively.</p>
example.
 
<var>Trace</var> is identical to [[Print (Arraylist subroutine)|Print]], except the result is
sent to the selected <var>Trace</var> stream (like the User Language <var>Trace</var> statement).
==Syntax==
==Syntax==
{{Template:Arraylist:Trace syntax}}
{{Template:Arraylist:Trace syntax}}
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>al</th>
<tr><th><var class="term">al</var></th>
<td>An <var>Arraylist</var> object. </td></tr>
<td>An <var>Arraylist</var> object. </td></tr>
<tr><th><i>method</i></th>
<tr><th><i>method</i></th>
<td>The method that is applied to <var class="term">al</var> items to produce the printed output. The method must take no parameters and produce an intrinsic (<var>Float</var>, <var>String</var>, <var>Fixed</var>, <var>Unicode</var>) value. It may be a system or user-written method, a class variable or property, a local method, or a [[Method variables|method variable]].
<td>The method that is to be applied to <var class="term">al</var> items to produce the trace output. The method must take no parameters and produce an <var>[[Intrinsic classes|intrinsic]]</var> (be that <var>Float</var>, <var>String</var>, <var>Fixed</var> or <var>Unicode</var>) value. It may be a system or user-written method, a class variable or property, a local method, or a [[Method variables|method variable]].
<p class="code">The default value of <var class="term">method</var> is <var>ToString</var>.</td></tr>
<p>The default value of <var class="term">method</var> is <var>ToString</var>.</p></td></tr>
</p>
<tr><th>NumWidth</th>
<tr><th>numWidth</th>
<td>The number of bytes in the display of each item to use for the item number. This is an optional parameter; if you specify a value, the parameter name <var class="term">NumWidth</var> is required.<p>
<td>The number of bytes in the display of each item to use for the item number. This is an optional parameter; if you specify a value, the parameter name <var>NumWidth</var> is required.
Item numbers are right-justified within the indicated number of bytes, and they are truncated on the left if the length of the item number exceeds the space allocated for it. The <var class="Term">NumWidth</var> must be a number between <code>-1</code> and <code>10</code> inclusive. If you specify a value of <code>0</code>, the item number is not displayed.</p><p>If <var class="term">NumWidth</var> is <code>-1</code>, the default, the method uses the minimum number of bytes required to show the item number. For example, one byte is required for item number 5, while five bytes are required for item number 98764.</p></td></tr>
Item numbers are right-justified within the indicated number of bytes, and they are truncated on the left if the length of the item number exceeds the space allocated for it. The width must be a number between -1 and 10 inclusive. If you specify a value of 0, the item number is not displayed.
<tr><th>Separator</th>
 
If <var class="term">numWidth</var> is -1, the default, the method uses the minimum number of bytes required to show the item number. For example, one byte is required for item number 5, while five bytes are required for item number 98764. </td></tr>
<tr><th>separator</th>
<td>A string, 15 characters or less, to be used to separate the item number from the item value.
<td>A string, 15 characters or less, to be used to separate the item number from the item value.
This is an optional argument whose default is a colon (<code>:</code>). A blank always follows the <var class="term">separator</var> string. If you specify a value, the parameter name <var>Separator</var> is required.</td></tr>
<p>This is an optional argument whose default is a colon (<code>':'</code>). A blank always follows the <var class="term">Separator</var> string. If you specify a value, the parameter name <var class="term">Separator</var> is required.</p></td></tr>
<tr><th>start</th>
<tr><th>Start</th>
<td>The item number of the initial item in the output display. This is an optional argument, and it defaults to 1. If you specify a value, the parameter name <var>Start</var> is required.</td></tr>
<td>The item number of the initial item in the output display. This is an optional argument, and it defaults to 1. If you specify a value, the parameter name <var class="term">Start</var> is required.</td></tr>
<tr><th>maxItems</th>
<tr><th>MaxItems</th>
<td>The maximum number of items to display. A zero or negative value means to display all the items.
<td>The maximum number of items to display. A zero or negative value means to display all the items. This is an optional argument, and it defaults to zero. If you specify a value, the parameter name <var class="term">MaxItems</var> is required.</td></tr>
This is an optional argument, and it defaults to zero. If you specify a value, the parameter name <var>MaxItems</var> is required.</td></tr>
<tr><th>Label</th>
<tr><th>label</th>
<td>A literal string that gets output before each line. This is useful for "tagging" lines to make them more identifiable. This is an optional argument whose default is a null string. If you specify a value, the parameter name <var class="term">Label</var> is required.</td></tr>
<td>A literal string that gets output before each line. This is useful for "tagging" lines to make them more identifiable.
This is an optional argument whose default is a null string. If you specify a value, the parameter name <var>Label</var> is required.</td></tr>
</table>
</table>


Line 37: Line 30:
<ul>
<ul>
<li>All errors in <var>Trace</var> result in request cancellation.
<li>All errors in <var>Trace</var> result in request cancellation.
<li><var>[[Audit (Arraylist subroutine)|Audit]]</var> and <var>[[Print (Arraylist subroutine)|Print]]</var> are
<li><var>[[Audit (Arraylist subroutine)|Audit]]</var> and <var>[[Print (Arraylist subroutine)|Print]]</var> are the same as <var>Trace</var> except they send their output to the <var class="product">Model 204</var> audit trail or currently selected trace destinations, respectively.
the same as <var>Trace</var> except they send their output to the audit trail and standard output destination, respectively.
<li>For examples of <var>Print</var> method calls, see [[Collections#Printing a collection|Printing a collection]].
</ul>
</ul>
==Examples==
<ol><li>For examples of <var>Trace</var> method calls, see [[Collections#Printing a collection|Printing a collection]].
</ol>
==See also==
==See also==
{{Template:Arraylist:Trace footer}}
{{Template:Arraylist:Trace footer}}

Revision as of 06:35, 30 January 2011

Trace Arraylist (Arraylist class)


The Trace subroutine displays the contents of an Arraylist in a readable form on the currently selected trace stream, useful for debugging, for example. The listed item values are displayed in ascending order by their position and, by default, are preceded by their item number, a colon (':') and a blank.

Trace is identical to Audit and Print, except their output is sent to the Model 204 audit trail (like the User Language Audit statement) and user's standard output (terminal) destinations respectively.

Syntax

al:Trace[( [itemFunction], [NumWidth= number], [Separator= string], - [Start= number], [MaxItems= number], [Label= string])]

Syntax terms

al An Arraylist object.
method The method that is to be applied to al items to produce the trace output. The method must take no parameters and produce an intrinsic (be that Float, String, Fixed or Unicode) value. It may be a system or user-written method, a class variable or property, a local method, or a method variable.

The default value of method is ToString.

NumWidth The number of bytes in the display of each item to use for the item number. This is an optional parameter; if you specify a value, the parameter name NumWidth is required.

Item numbers are right-justified within the indicated number of bytes, and they are truncated on the left if the length of the item number exceeds the space allocated for it. The NumWidth must be a number between -1 and 10 inclusive. If you specify a value of 0, the item number is not displayed.

If NumWidth is -1, the default, the method uses the minimum number of bytes required to show the item number. For example, one byte is required for item number 5, while five bytes are required for item number 98764.

Separator A string, 15 characters or less, to be used to separate the item number from the item value.

This is an optional argument whose default is a colon (':'). A blank always follows the Separator string. If you specify a value, the parameter name Separator is required.

Start The item number of the initial item in the output display. This is an optional argument, and it defaults to 1. If you specify a value, the parameter name Start is required.
MaxItems The maximum number of items to display. A zero or negative value means to display all the items. This is an optional argument, and it defaults to zero. If you specify a value, the parameter name MaxItems is required.
Label A literal string that gets output before each line. This is useful for "tagging" lines to make them more identifiable. This is an optional argument whose default is a null string. If you specify a value, the parameter name Label is required.

Usage notes

  • All errors in Trace result in request cancellation.
  • Audit and Print are the same as Trace except they send their output to the Model 204 audit trail or currently selected trace destinations, respectively.

Examples

  1. For examples of Trace method calls, see Printing a collection.

See also