private Operator(string op, int leftPrecedence, int rightPrecedence) { this.op = ' ' + op + ' '; this.leftPrecedence = leftPrecedence; this.rightPrecedence = rightPrecedence; this.unaryType = UnaryTypes.Binary; }
private Operator(string op, int precedence, UnaryTypes unaryType, bool rightAssoc) { this.op = unaryType == UnaryTypes.Binary ? ' ' + op + ' ' : unaryType == UnaryTypes.Prefix ? op + ' ' : ' ' + op; this.leftPrecedence = precedence; this.rightPrecedence = precedence; this.unaryType = unaryType; this.rightAssoc = rightAssoc; }
Operator(string op, int precedence, int newPrecedence, UnaryTypes unaryType, bool rightAssoc) { Op = unaryType == UnaryTypes.Binary ? ' ' + op + ' ' : unaryType == UnaryTypes.Prefix ? op + ' ' : ' ' + op; LeftPrecedence = precedence; RightPrecedence = precedence; NewPrecedence = newPrecedence; UnaryType = unaryType; RightAssoc = rightAssoc; }