| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #ifndef __com_sun_star_sheet_FormulaMapGroupSpecialOffset_idl__ |
| #define __com_sun_star_sheet_FormulaMapGroupSpecialOffset_idl__ |
| |
| // =========================================================================== |
| |
| module com { module sun { module star { module sheet { |
| |
| // =========================================================================== |
| |
| /** Constants designating the offsets within the sequence returned by |
| <member>XFormulaOpCodeMapper::getAvailableMappings</member> when |
| called for group <const>FormulaMapGroup::SPECIAL</const>. |
| |
| <p>The number of constants may grow in future versions!</p> |
| */ |
| constants FormulaMapGroupSpecialOffset |
| { |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe a formula operand token that will be pushed onto the formula |
| stack while the formula is interpreted. |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain one of |
| the following values:</p> |
| |
| <ul> |
| <li>A value of type <atom>double</atom> for literal floating-point |
| constants.</li> |
| <li>A <atom>string</atom> for literal text.</li> |
| <li>A <atom dim="[][]">any</atom> for a literal array. The contained |
| values shall be of type <atom>double</atom> or <atom>string</atom>. |
| Floating-point values and strings may occur together in an array.</li> |
| <li>A struct of type <type>SingleReference</type> for a reference to a |
| single cell in the own document.</li> |
| <li>A struct of type <type>ComplexReference</type> for a reference to |
| a range of cells in the own document.</li> |
| <li>A struct of type <type>ExternalReference</type> for a reference to |
| a cell, a range of cells, or a defined name in an external document.</li> |
| </ul> |
| */ |
| const long PUSH = 0; |
| |
| // ----------------------------------------------------------------------- |
| |
| const long CALL = 1; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| instruct the formula interpreter to immediately stop interpreting the |
| formula. |
| |
| <p>The <member>FormulaToken::Data</member> member is not used |
| and should be empty.</p> |
| */ |
| const long STOP = 2; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe the reference to an external function (e.g. add-in function) |
| used in formulas. |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain a |
| <atom>string</atom> with the programmatical name of the function, e.g. |
| "com.sun.star.sheet.addin.Analysis.getEomonth" for the EOMONTH |
| function from the Analsysis add-in.</p> |
| */ |
| const long EXTERNAL = 3; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe the reference to a defined name (also known as named range) |
| used in formulas. |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain an |
| integer value of type <atom>long</atom> specifying the index of the |
| defined name. This index can be obtained from the defined name using |
| its <member>NamedRange::TokenIndex</member> property.</p> |
| |
| @see NamedRange |
| */ |
| const long NAME = 4; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe an invalid name that resolves to the #NAME? error in formulas. |
| |
| <p>The <member>FormulaToken::Data</member> member is not used |
| and should be empty.</p> |
| */ |
| const long NO_NAME = 5; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe an empty function parameter. |
| |
| <p>Example: In the formula <code>=SUM(1;;2)</code> the second |
| parameter is empty and represented by a formula token containing the |
| "missing" op-code.</p> |
| |
| <p>The <member>FormulaToken::Data</member> member is not used |
| and should be empty.</p> |
| */ |
| const long MISSING = 6; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe "bad" data in a formula, e.g. data the formula parser was not |
| able to parse. |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain a |
| <atom>string</atom> with the bad data. This string will be displayed |
| literally in the formula.</p> |
| */ |
| const long BAD = 7; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe whitespace characters within the string representation of a |
| formula. |
| |
| <p>Whitespace characters in formulas are used for readability and do |
| not affect the result of the formula.</p> |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain a |
| positive integer value of type <atom>long</atom> specifying the number |
| of space characters.</p> |
| |
| <p>Attention: This may change in next versions to support other |
| characters than simple space characters (e.g. line feeds, horizontal |
| tabulators, non-breakable spaces).</p> |
| */ |
| const long SPACES = 8; |
| |
| // ----------------------------------------------------------------------- |
| |
| const long MAT_REF = 9; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe the reference to a database range used in formulas. |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain an |
| integer value of type <atom>long</atom> specifying the index of the |
| database range. This index can be obtained from the database range |
| using its <member>DatabaseRange::TokenIndex</member> property.</p> |
| |
| @see DatabaseRange |
| */ |
| const long DB_AREA = 10; |
| |
| // ----------------------------------------------------------------------- |
| |
| /** Formula tokens containing the op-code obtained from this offset |
| describe the reference to a macro function called in a formula. |
| |
| <p>The <member>FormulaToken::Data</member> member shall contain a |
| <atom>string</atom> specifying the name of the macro function.</p> |
| */ |
| const long MACRO = 11; |
| |
| // ----------------------------------------------------------------------- |
| |
| const long COL_ROW_NAME = 12; |
| |
| // ----------------------------------------------------------------------- |
| |
| }; |
| |
| // =========================================================================== |
| |
| }; }; }; }; |
| |
| #endif |
| |