Trace (Arraylist subroutine): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
Line 13: Line 13:
<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]].
<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>The default value of <var class="term">method</var> is <var>[[Collections#Examples using class or local ToString|ToString]]</var>.</p></td></tr>
<p>The default value of <var class="term">method</var> is <var>[[Collections#Examples using class or local ToString|ToString]]</var>.</p></td></tr>
<tr><th><var>NumWidth</var></th>
<tr><th><var>NumWidth</var></th>
<td>The number of bytes in the display of each item to use for the item number. This is an optional, but <var>[[Methods#Named parameters|NameRequired]]</var>, 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, but <var>[[Methods#Named parameters|name required]]</var>, parameter; if you specify a value, the parameter name <var class="term">NumWidth</var> is required.<p>
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> value 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 <var class="Term">NumWidth</var> value 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>
<tr><th><var>Separator</var></th>
<tr><th><var>Separator</var></th>
<td>A string, 15 characters or less, to be used to separate the item number from the item value. This is an optional, but <var>[[Methods#Named parameters|NameRequired]]</var> argument; if you specify a value, the parameter name <var class="term">Separator</var> is required.<p>The default value for <var>Separator</var> is a colon (<code>:</code>). A blank always follows the <var class="term">Separator</var> string.</p></td></tr>
<td>A string, 15 characters or less, to be used to separate the item number from the item value. This is an optional, but [[Methods#Named parameters|name required]] argument; if you specify a value, the parameter name <var class="term">Separator</var> is required.<p>The default value for <var>Separator</var> is a colon (<code>:</code>). A blank always follows the <var class="term">Separator</var> string.</p></td></tr>
 
<tr><th><var>Start</var></th>
<tr><th><var>Start</var></th>
<td>The item number of the initial item  in the output display. This is an optional, but <var>[[Methods#Named parameters|NameRequired]]</var>, argument; if you specify a value, the parameter name <var class="term">Start</var> is required.
<td>The item number of the initial item  in the output display. This is an optional, but name required, argument; if you specify a value, the parameter name <var class="term">Start</var> is required.
<p>The default value for <var>Start</var> is <code>1</code>, which commences the output display with the first item in <var class="term">al</var>.</p></td></tr>
<p>The default value for <var>Start</var> is <code>1</code>, which commences the output display with the first item in <var class="term">al</var>.</p></td></tr>
<tr><th><var>MaxItems</var></th>
<tr><th><var>MaxItems</var></th>
<td>The maximum number of items to display. A zero or negative value means to display all the items. This is an optional, but <var>[[Methods#Named parameters|NameRequired]]</var>, argument; if you specify a value, the parameter name <var class="term">MaxItems</var> is required.<p>The default value for <var>MaxItems</var> is <code>0</code>, which displays all items from the <var class="term">Start</var> item to the end of <var class="term">al</var>.</p></td></tr>
<td>The maximum number of items to display. A zero or negative value means to display all the items. This is an optional, but name required, argument; if you specify a value, the parameter name <var class="term">MaxItems</var> is required.<p>The default value for <var>MaxItems</var> is <code>0</code>, which displays all items from the <var class="term">Start</var> item to the end of <var class="term">al</var>.</p></td></tr>
 
<tr><th><var>Label</var></th>
<tr><th><var>Label</var></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, but <var>[[Methods#Named parameters|NameRequired]]</var>, argument; if you specify a value, the parameter name <var class="term">Label</var> is required.<p>The default value for <var>Label</var> is a null string, which displays no additional "tag" information.</p></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, but name required, argument; if you specify a value, the parameter name <var class="term">Label</var> is required.<p>The default value for <var>Label</var> is a null string, which displays no additional "tag" information.</p></td></tr>
</table>
</table>



Revision as of 18:58, 19 March 2012

Trace Arraylist (Arraylist class)


The Trace subroutine displays the contents of an Arraylist in a readable form on the currently selected trace stream. That stream can be the user's standard output, the Model 204 audit trail, an internal trace table, or a combination of these (as described for the User Language Trace statement). 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 space (': ').

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 to the user's standard output (terminal) destination, 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, but name required, 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 value 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, but name required argument; if you specify a value, the parameter name Separator is required.

The default value for Separator is a colon (:). A blank always follows the Separator string.

Start The item number of the initial item in the output display. This is an optional, but name required, argument; if you specify a value, the parameter name Start is required.

The default value for Start is 1, which commences the output display with the first item in al.

MaxItems The maximum number of items to display. A zero or negative value means to display all the items. This is an optional, but name required, argument; if you specify a value, the parameter name MaxItems is required.

The default value for MaxItems is 0, which displays all items from the Start item to the end of al.

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, but name required, argument; if you specify a value, the parameter name Label is required.

The default value for Label is a null string, which displays no additional "tag" information.

Usage notes

  • All errors in Trace result in request cancellation.

Examples

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

See also

  • 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.