public static bool IsUnaryOperator(TokenStream<RToken> tokens, ITextProvider textProvider,
OperatorType operatorType, int offset) {
if (!IsPossibleUnary(operatorType)) {
return false;
}
// If operator is preceded by an operator, it is then unary
var precedingTokenType = tokens.LookAhead(offset).TokenType;
switch (precedingTokenType) {
case RTokenType.Operator:
case RTokenType.OpenBrace:
case RTokenType.OpenCurlyBrace:
case RTokenType.OpenSquareBracket:
case RTokenType.OpenDoubleSquareBracket:
case RTokenType.Semicolon:
case RTokenType.Keyword:
return true;
}
return false;
}