// Returns the operator name surrounded by the expected whitespace for a tidy binary expression. constchar* operatorName() const;
// Returns the operator name without any surrounding whitespace.
std::string_view tightOperatorName() const;
// Returns true if op is `=` or any compound-assignment operator (`+=`, `-=`, etc.) bool isAssignment() const;
// Returns true if op is any compound-assignment operator (`+=`, `-=`, etc.) but false for `=` bool isCompoundAssignment() const;
// Given a compound-assignment operator, returns the non-assignment version of the operator // (e.g. `+=` becomes `+`) Operator removeAssignment() const;
/** * Defines the set of relational (comparison) operators: * < <= > >=
*/ bool isRelational() const;
/** * Defines the set of operators which are only valid on integral types: * << <<= >> >>= & &= | |= ^ ^= % %=
*/ bool isOnlyValidForIntegralTypes() const;
/** * Defines the set of operators which perform vector/matrix math. * + += - -= * *= / /= % %= << <<= >> >>= & &= | |= ^ ^=
*/ bool isValidForMatrixOrVector() const;
/* * Defines the set of operators allowed by The OpenGL ES Shading Language 1.00, Section 5.1. * The set of illegal (reserved) operators are the ones that only make sense with integral * types. This is not a coincidence: It's because ES2 doesn't require 'int' to be anything but * syntactic sugar for floats with truncation after each operation.
*/ bool isAllowedInStrictES2Mode() const { return !this->isOnlyValidForIntegralTypes();
}
/** * Determines the operand and result types of a binary expression. Returns true if the * expression is legal, false otherwise. If false, the values of the out parameters are * undefined.
*/ bool determineBinaryType(const Context& context, const Type& left, const Type& right, const Type** outLeftType, const Type** outRightType, const Type** outResultType) const;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.