org.apache.poi.ss.formula.ptg
Class ArrayPtg
java.lang.Object
org.apache.poi.ss.formula.ptg.Ptg
org.apache.poi.ss.formula.ptg.ArrayPtg
public final class ArrayPtg
- extends Ptg
ArrayPtg - handles arrays
The ArrayPtg is a little weird, the size of the Ptg when parsing initially only
includes the Ptg sid and the reserved bytes. The next Ptg in the expression then follows.
It is only after the "size" of all the Ptgs is met, that the ArrayPtg data is actually
held after this. So Ptg.createParsedExpression keeps track of the number of
ArrayPtg elements and need to parse the data upto the FORMULA record size.
- Author:
- Jason Height (jheight at chariot dot net dot au)
Field Summary |
static int |
PLAIN_TOKEN_SIZE
The size of the plain tArray token written within the standard formula tokens
(not including the data which comes after all formula tokens) |
static byte |
sid
|
Constructor Summary |
ArrayPtg(java.lang.Object[][] values2d)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
sid
public static final byte sid
- See Also:
- Constant Field Values
PLAIN_TOKEN_SIZE
public static final int PLAIN_TOKEN_SIZE
- The size of the plain tArray token written within the standard formula tokens
(not including the data which comes after all formula tokens)
- See Also:
- Constant Field Values
ArrayPtg
public ArrayPtg(java.lang.Object[][] values2d)
- Parameters:
values2d
- array values arranged in rows
getTokenArrayValues
public java.lang.Object[][] getTokenArrayValues()
- Returns:
- 2-d array (inner index is rowIx, outer index is colIx)
isBaseToken
public boolean isBaseToken()
- Specified by:
isBaseToken
in class Ptg
- Returns:
false
if this token is classified as 'reference', 'value', or 'array'
toString
public java.lang.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
write
public void write(LittleEndianOutput out)
- Specified by:
write
in class Ptg
writeTokenValueBytes
public int writeTokenValueBytes(LittleEndianOutput out)
getRowCount
public int getRowCount()
getColumnCount
public int getColumnCount()
getSize
public int getSize()
- This size includes the size of the array Ptg plus the Array Ptg Token value size
- Specified by:
getSize
in class Ptg
- Returns:
- the encoded length of this Ptg, including the initial Ptg type identifier byte.
toFormulaString
public java.lang.String toFormulaString()
- Description copied from class:
Ptg
- return a string representation of this token alone
- Specified by:
toFormulaString
in class Ptg
getDefaultOperandClass
public byte getDefaultOperandClass()
- Specified by:
getDefaultOperandClass
in class Ptg
Copyright 2012 The Apache Software Foundation or
its licensors, as applicable.