suppressif (1 OR 0); // element is present (incorrect)
...
endif;
suppressif ((BOOLEAN)1 OR (BOOLEAN)0); // element is not present (correct)
...
endif;
EFI_IFR_EQ_ID_VAL
Summary:
Push TRUE if a question’s value is equal to a 16-bit unsigned integer, otherwise FALSE.
Prototype:
#define EFI_IFR_EQ_ID_VAL_OP 0x12
typedef struct _EFI_IFR_EQ_ID_VAL {
EFI_IFR_OP_HEADER Header;
EFI_QUESTION_ID QuestionId;
UINT16 Value;
} EFI_IFR_EQ_ID_VAL;
Members:
Header Standard opcode header, where OpCode is EFI_IFR_EQ_ID_VAL_OP.
QuestionId Specifies the identifier of the question whose value will be compared.
Value Unsigned integer value to compare against.
Description:
Evaluate the value of the specified question (QuestionId). If the specified question cannot be evaluated as an unsigned integer, then push Undefined. If they are equal, push TRUE. Otherwise push FALSE.
suppressif NOT ideqval FormData.OneOfValue == 0x33;
...
endif;
EFI_IFR_EQ_ID_ID
Summary:
Push TRUE if the two questions have the same value or FALSE if they are not equal.
Prototype:
#define EFI_IFR_EQ_ID_ID_OP 0x13
typedef struct _EFI_IFR_EQ_ID_ID {
EFI_IFR_OP_HEADER Header;
EFI_QUESTION_ID QuestionId1;
EFI_QUESTION_ID QuestionId2;
} EFI_IFR_EQ_ID_ID;
Members:
Header Standard opcode header, where OpCode is EFI_IFR_EQ_ID_ID_OP.
QuestionId1, QuestionId2 Specifies the identifier of the questions whose values will be compared.
Description:
Evaluate the values of the specified questions (QuestionId1, QuestionId2). If the two values cannot be evaluated or cannot be converted to comparable types, then push Undefined. If they are equal, push TRUE. Otherwise push FALSE.
EFI_IFR_QUESTION_REF1
Summary:
Push a question’s value on the expression stack.
Prototype:
#define EFI_IFR_QUESTION_REF1_OP 0x40
typedef struct _EFI_IFR_QUESTION_REF1 {
EFI_IFR_OP_HEADER Header;
EFI_QUESTION_ID QuestionId;
} EFI_IFR_QUESTION_REF1;
Members:
Header The byte sequence that defines the type of opcode as well as the length of the opcode being defined.
Header.OpCode = EFI_IFR_QUESTION_REF1_OP.
QuestionId The question’s identifier, which must be unique within the form set.
Description:
Push the value of the question specified by QuestionId on to the expression stack. If the question’s value cannot be determined or the question does not exist, then push Undefined.
EFI_IFR_THIS
Summary:
Push current question’s value.
Prototype:
#define EFI_IFR_THIS_OP 0x58
typedef struct _EFI_IFR_THIS {
EFI_IFR_OP_HEADER Header;
} EFI_IFR_THIS;
Members:
Header The sequence that defines the type of opcode as well as the length of the opcode being defined.
For this tag, Header.OpCode = EFI_IFR_THIS_OP.
Description:
Push the current question’s value.
numeric
name = NumericQuestion,
varid = FormData.NumericValue,
prompt = STRING_TOKEN(NUMERIC_PROMPT),
help = STRING_TOKEN(NUMERIC_HELP),
minimum = 5,
maximum = 20,
warningif
prompt = STRING_TOKEN(WARNING_IF_PROMPT),
pushthis == 10
endif;
endnumeric;