namespace com.azkoss.excellite
{
using System;
using System.Collections;
///
///Formula token for holding unary operator.
///
internal class UnaryOperatorFormulaToken : FormulaToken
{
// Methods
///
///Initializes the class.
///
static UnaryOperatorFormulaToken()
{
UnaryOperatorFormulaToken.CodesToStrings = new Hashtable();
UnaryOperatorFormulaToken.UnaryOperatorsList = new ArrayList();
UnaryOperatorFormulaToken.CodesToStrings[FormulaTokenCode.Uplus] = "+";
UnaryOperatorFormulaToken.CodesToStrings[FormulaTokenCode.Uminus] = "-";
UnaryOperatorFormulaToken.CodesToStrings[FormulaTokenCode.Percent] = "%";
UnaryOperatorFormulaToken.CodesToStrings[FormulaTokenCode.Parentheses] = "(";
UnaryOperatorFormulaToken.UnaryOperatorsList.AddRange(new char[] { '+', '-', '%', '(', ')' } );
}
///
///Initializes a new instance of the class.
///
///The code.
public UnaryOperatorFormulaToken(FormulaTokenCode code) : base(code, 1, FormulaTokenType.Unary)
{
}
///
///Convert formula token to string representation.
///
///formula token string representation
public override string ToString()
{
return (UnaryOperatorFormulaToken.CodesToStrings[(FormulaTokenCode) base.Code] as string);
}
// Fields
public static readonly Hashtable CodesToStrings;
public static readonly ArrayList UnaryOperatorsList;
}
}