Class AbstractFunctionPtg

Direct Known Subclasses:
FuncPtg, FuncVarPtg

public abstract class AbstractFunctionPtg extends OperationPtg
This class provides the base functionality for Excel sheet functions There are two kinds of function Ptgs - tFunc and tFuncVar Therefore, this class will have ONLY two subclasses
Author:
Avik Sengupta, Andrew C. Oliver (acoliver at apache dot org)
  • Field Details

    • ATTR_NAME

      public static final String ATTR_NAME
      See Also:
    • INDEX_EXTERNAL

      public static final short INDEX_EXTERNAL
      See Also:
    • functionData

      protected static Object[][] functionData
    • returnClass

      protected byte returnClass
    • paramClass

      protected byte[] paramClass
    • field_1_num_args

      protected byte field_1_num_args
    • field_2_fnc_index

      protected short field_2_fnc_index
  • Constructor Details

    • AbstractFunctionPtg

      public AbstractFunctionPtg()
  • Method Details

    • toString

      public String toString()
      Description copied from class: Ptg
      Overridden toString method to ensure object hash is not printed. This helps get rid of gratuitous diffs when comparing two dumps Subclasses may output more relevant information by overriding this method
      Overrides:
      toString in class Ptg
    • getType

      public int getType()
      Specified by:
      getType in class OperationPtg
    • getFunctionIndex

      public short getFunctionIndex()
    • getName

      public String getName()
    • toFormulaString

      public String toFormulaString(Workbook book)
      Description copied from class: Ptg
      return a string representation of this token alone
      Specified by:
      toFormulaString in class Ptg
    • toFormulaString

      public String toFormulaString(String[] operands)
      Description copied from class: OperationPtg
      returns a string representation of the operations the length of the input array should equal the number returned by
      Specified by:
      toFormulaString in class OperationPtg
      See Also:
    • writeBytes

      public abstract void writeBytes(byte[] array, int offset)
      Description copied from class: Ptg
      write this Ptg to a byte array
      Specified by:
      writeBytes in class Ptg
    • getSize

      public abstract int getSize()
      Specified by:
      getSize in class Ptg
    • lookupName

      protected String lookupName(short index)
    • lookupIndex

      protected short lookupIndex(String name)
    • getDefaultOperandClass

      public byte getDefaultOperandClass()
      Overrides:
      getDefaultOperandClass in class OperationPtg
    • getParameterClass

      public byte getParameterClass(int index)