/* cFormulaOperators is container for holding all ECMA-376 operators, see chapter $18.17.2.2 in "ECMA-376, Second Edition, Part 1 - Fundamentals And Markup Language Reference" */
varcFormulaOperators={
'(':parentLeft,
')':parentRight,
'{':function(){
varcFormulaOperators={
'(':parentLeft,
')':parentRight,
'{':function(){
varr={};
r.name='{';
r.toString=function(){
...
...
@@ -3373,7 +3355,7 @@ var cFormulaOperators = {
};
returnr;
},
'}':function(){
'}':function(){
varr={};
r.name='}';
r.toString=function(){
...
...
@@ -3381,28 +3363,28 @@ var cFormulaOperators = {
};
returnr;
},/* 50 is highest priority */
':':cRangeUnionOperator,
'':cRangeIntersectionOperator,
':':cRangeUnionOperator,
'':cRangeIntersectionOperator,
'un_minus':cUnarMinusOperator,
'un_plus':cUnarPlusOperator,
'%':cPercentOperator,
'^':cPowOperator,
'*':cMultOperator,
'/':cDivOperator,
'+':cAddOperator,
'-':cMinusOperator,
'&':cConcatSTROperator/*concat str*/,
'=':cEqualsOperator/*equals*/,
'<>':cNotEqualsOperator,
'<':cLessOperator,
'<=':cLessOrEqualOperator,
'>':cGreaterOperator,
'>=':cGreaterOrEqualOperator
'un_plus':cUnarPlusOperator,
'%':cPercentOperator,
'^':cPowOperator,
'*':cMultOperator,
'/':cDivOperator,
'+':cAddOperator,
'-':cMinusOperator,
'&':cConcatSTROperator/*concat str*/,
'=':cEqualsOperator/*equals*/,
'<>':cNotEqualsOperator,
'<':cLessOperator,
'<=':cLessOrEqualOperator,
'>':cGreaterOperator,
'>=':cGreaterOrEqualOperator
/* 10 is lowest priopity */
};
};
/* cFormulaFunctionGroup is container for holding all ECMA-376 function, see chapter $18.17.7 in "ECMA-376, Second Edition, Part 1 - Fundamentals And Markup Language Reference" */
/*
/* cFormulaFunctionGroup is container for holding all ECMA-376 function, see chapter $18.17.7 in "ECMA-376, Second Edition, Part 1 - Fundamentals And Markup Language Reference" */
/*
Каждая формула представляет собой копию функции cBaseFunction.
Для реализации очередной функции необходимо указать количество (минимальное и максимальное) принимаемых аргументов. Берем в спецификации.
Также необходино написать реализацию методов Calculate и getInfo(возвращает название функции и вид/количетво аргументов).