Copy and DeepCopy (Record functions): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 11: Line 11:


<tr><th>record</th>
<tr><th>record</th>
<td>A <var>Record</var> object variable. The variable can be null, in which case the output object will also be null.</td></tr>
<td>A <var>Record</var> object variable. The variable can be <var>Null</var>, in which case the output object will also be <var>Null</var>.</td></tr>


<tr><th>lockstrength</th>
<tr><th>lockstrength</th>
<td>A value of the <var>LockStrength</var> enumeration that is the lock strength to give to the instantiated <var>Record</var> object. Options are: <var>None</var>, <var>Share</var>, or <var>Exclusive</var>, as described in [[New (Recordset constructor)|"New (Recordset constructor)"]]. This is an optional parameter, and it defaults to the lock strength of the method object. This parameter is only available in <var class="product">Sirius Mods</var> 7.0 and later.</td></tr>
<td>A value of the <var>LockStrength</var> enumeration that is the lock strength to give to the instantiated <var>Record</var> object. Options are: <var>None</var>, <var>Share</var>, or <var>Exclusive</var>, as described in [[New (Recordset constructor)|"New (Recordset constructor)"]]. This is an optional parameter, and it defaults to the lock strength of the method object. </td></tr>


<tr><th><var>LoopLockStrength</var></th>
<tr><th><var>LoopLockStrength</var></th>
<td>The lock strength to be used for loops on the copied <var>Record</var>. This is an optional, [[Notation conventions for methods#Named parameters|name required]], parameter, and it defaults to the <var>LoopLockStrength</var> of the method object <var>Record</var>. See [[Record class#LoopLockStrength for Records|"LoopLockStrength for Records"]]. This parameter is available in <var class="product">Sirius Mods</var> 7.0 and later.</td></tr>
<td>The lock strength to be used for loops on the copied <var>Record</var>. This is an optional, [[Notation conventions for methods#Named parameters|name required]], parameter, and it defaults to the <var>LoopLockStrength</var> of the method object <var>Record</var>. See [[Record class#LoopLockStrength for Records|"LoopLockStrength for Records"]]. </td></tr>
</table>
</table>



Revision as of 00:42, 7 November 2012

Deep copy this Record object (Record class)

DeepCopy returns an exact copy of the method object. It is identical to the Record Copy method. Record objects are always copyable and "deep-copyable" (as these terms are described in "The Object class copy methods").

Syntax

%outRecord = record:DeepCopy[( [lockStrength], - [LoopLockStrength= lockStrength])]

Syntax terms

%outRecord A Record object created by this method that contains a copy of the method object.
record A Record object variable. The variable can be Null, in which case the output object will also be Null.
lockstrength A value of the LockStrength enumeration that is the lock strength to give to the instantiated Record object. Options are: None, Share, or Exclusive, as described in "New (Recordset constructor)". This is an optional parameter, and it defaults to the lock strength of the method object.
LoopLockStrength The lock strength to be used for loops on the copied Record. This is an optional, name required, parameter, and it defaults to the LoopLockStrength of the method object Record. See "LoopLockStrength for Records".

Usage notes

  • The main value of DeepCopy of Record objects is to facilitate passing of these objects to and from daemons.
  • The following example illustrates the use of the DeepCopy function:

    %firstRec is object record in file geeks %currentRec is object record in file geeks ... %currentRec = %firstRec:deepcopy

See also