Verify (VERIFY)


Op Code (Hex) Extender Operand 1 Operand 2 Operand 3 Operand [4-5]
VERIFY 10D7
Receiver Source Class


VERIFYB 1CD7 Branch options Receiver Source Class Branch targets


VERIFYI 18D7 Indicator options Receiver Source Class Indicator targets

Operand 1: Binary variable scalar or binary array.

Operand 2: Character scalar.

Operand 3: Character scalar.

Operand 4-5:

Description  Each character of the source operand character string value is checked to verify that it is among the valid characters indicated in the class operand.

The operation begins at the left end of the source string and continues character by character, from left to right. Each character of the source value is compared with the characters of the class operand. If a match for the source character exists in the class string, the next source character is verified. If a match for the source character does not exist in the class string, the binary value for the relative location of the character within the source string is placed in the receiver operand.

If the receiver operand is a scalar, only the first occurrence of an invalid character is noted. If the receiver operand is an array, as many occurrences as there are elements in the array are noted.

The operation continues until no more occurrences of invalid characters can be noted or until the end of the source string is encountered. When the second condition occurs, the current receiver value is set to 0. If the receiver operand is an array, all its remaining entries are set to 0's.

The source and class operands can be variable length substring compound operands.

Substring operand references that allow for a null substring reference (a length value of zero) may be specified for operands 2 and 3. The effect of specifying a null substring reference for the class operand when a nonnull string reference is specified for the source is that all of the characters of the source are considered invalid. In this case, the receiver is accordingly set with the offset(s) to the bytes of the source, and the instruction's resultant condition is positive. The effect of specifying a null substring reference for the source operand (no characters to verify) is that the receiver is set to zero and the instruction's resultant condition is zero regardless of what is specified for the class operand.

Resultant Conditions  The numeric value(s) of the receiver is either 0 or positive. When the receiver operand is an array, the resultant condition is 0 if all elements are 0.

Authorization Required

Lock Enforcement

Exceptions

06 Addressing

08 Argument/Parameter

10 Damage Encountered

1C Machine-Dependent

20 Machine Support

22 Object Access

24 Pointer Specification

2C Program Execution

2E Resource Control Limit

36 Space Management

44 Protection Violation