@@ -637,7 +637,8 @@ class TrueOperator extends UnaryOperator {
637637 * operator (`DivOperator`), a remainder operator (`RemOperator`), an and
638638 * operator (`AndOperator`), an or operator (`OrOperator`), an xor
639639 * operator (`XorOperator`), a left shift operator (`LeftShiftOperator`),
640- * a right shift operator (`RightShiftOperator`), an equals operator (`EQOperator`),
640+ * a right shift operator (`RightShiftOperator`), an unsigned right shift
641+ * operator(`UnsignedRightShiftOperator`), an equals operator (`EQOperator`),
641642 * a not equals operator (`NEOperator`), a lesser than operator (`LTOperator`),
642643 * a greater than operator (`GTOperator`), a less than or equals operator
643644 * (`LEOperator`), or a greater than or equals operator (`GEOperator`).
@@ -822,6 +823,23 @@ class RightShiftOperator extends BinaryOperator {
822823/** DEPRECATED: Alias for RightShiftOperator. */
823824deprecated class RShiftOperator = RightShiftOperator ;
824825
826+ /**
827+ * A user-defined unsigned right shift operator (`>>>`), for example
828+ *
829+ * ```csharp
830+ * public static Widget operator >>>(Widget lhs, Widget rhs) {
831+ * ...
832+ * }
833+ * ```
834+ */
835+ class UnsignedRightShiftOperator extends BinaryOperator {
836+ UnsignedRightShiftOperator ( ) { this .getName ( ) = ">>>" }
837+
838+ override string getFunctionName ( ) { result = "op_UnsignedRightShift" }
839+
840+ override string getAPrimaryQlClass ( ) { result = "UnsignedRightShiftOperator" }
841+ }
842+
825843/**
826844 * A user-defined equals operator (`==`), for example
827845 *
0 commit comments