public class Formula extends Object implements Serializable
Modifier and Type | Method and Description |
---|---|
Formula |
copy() |
static Formula |
create(Ptg[] ptgs)
|
static Formula |
createX(Ptg[] ptgs)
|
int |
getEncodedSize() |
int |
getEncodedTokenSize()
This method is often used when the formula length does not appear immediately before
the encoded token data.
|
CellReference |
getExpReference()
Gets the locator for the corresponding
SharedFormulaRecord ,
ArrayRecord or TableRecord
if this formula belongs to such a grouping. |
Ptg[] |
getTokens() |
static Ptg[] |
getTokens(Formula formula)
|
static Ptg[] |
getTokens(Formula formula,
SpreadsheetVersion version) |
Ptg[] |
getTokens(SpreadsheetVersion version) |
boolean |
isSame(Formula other) |
static Formula |
read(int encodedTokenLen,
LittleEndianInput in)
Convenience method for
read(int, LittleEndianInput, int) |
static Formula |
read(int encodedTokenLen,
LittleEndianInput in,
int totalEncodedLen)
When there are no array constants present, encodedTokenLen==totalEncodedLen
|
void |
serialize(LittleEndianOutput out)
Writes The formula encoding is includes:
ushort tokenDataLen
tokenData
arrayConstantData (if present)
|
void |
serializeArrayConstantData(LittleEndianOutput out) |
void |
serializeTokens(LittleEndianOutput out) |
public static Formula read(int encodedTokenLen, LittleEndianInput in)
read(int, LittleEndianInput, int)
public static Formula read(int encodedTokenLen, LittleEndianInput in, int totalEncodedLen)
encodedTokenLen
- number of bytes in the stream taken by the plain formula tokenstotalEncodedLen
- the total number of bytes in the formula (includes trailing encoding
for array constants, but does not include 2 bytes for initial ushort encodedTokenLen field.null
.public Ptg[] getTokens(SpreadsheetVersion version)
public Ptg[] getTokens()
public void serialize(LittleEndianOutput out)
public void serializeTokens(LittleEndianOutput out)
public void serializeArrayConstantData(LittleEndianOutput out)
public int getEncodedSize()
public int getEncodedTokenSize()
public static Formula create(Ptg[] ptgs)
ptgs
- may be null
null
(Possibly empty if the supplied ptgs is null
)public static Formula createX(Ptg[] ptgs)
ptgs
- may be null
null
(Possibly empty if the supplied ptgs is null
)public static Ptg[] getTokens(Formula formula)
formula
- may be null
null
(if the supplied formula is null
)public static Ptg[] getTokens(Formula formula, SpreadsheetVersion version)
public Formula copy()
public CellReference getExpReference()
SharedFormulaRecord
,
ArrayRecord
or TableRecord
if this formula belongs to such a grouping. The CellReference
returned by this method will match the top left corner of the range of that grouping.
The return value is usually not the same as the location of the cell containing this formula.null
if this formula is not part of an array or shared formula.public boolean isSame(Formula other)
Copyright © 2020. All rights reserved.