@class NSString, TSCEFormulaObject, TSTFormulaPredArg, NSDate; @interface TSTFormulaPredicate : NSObject { TSCEFormulaObject *_formula; short _argIndex0; short _argIndex1; short _argIndex2; } @property (nonatomic) struct TSCEUidCellRef { struct TSKUIDStruct { unsigned long long _lower; unsigned long long _upper; } _columnUid; struct TSKUIDStruct { unsigned long long _lower; unsigned long long _upper; } _rowUid; struct TSKUIDStruct { unsigned long long _lower; unsigned long long _upper; } _tableUid; } hostCellRef; @property (readonly, nonatomic) TSCEFormulaObject *formula; @property (readonly, nonatomic) unsigned char predicateType; @property (readonly, nonatomic) unsigned char qualifier1; @property (readonly, nonatomic) unsigned char qualifier2; @property (nonatomic) BOOL forConditionalStyle; @property (readonly, nonatomic) unsigned char predArg1Type; @property (readonly, nonatomic) unsigned char predArg2Type; @property (readonly, nonatomic) double numberParam1; @property (readonly, nonatomic) double numberParam2; @property (readonly, nonatomic) NSString *stringParam1; @property (readonly, nonatomic) NSDate *dateTimeParam1; @property (readonly, nonatomic) NSDate *dateTimeParam2; @property (retain, nonatomic) TSTFormulaPredArg *predArg0; @property (retain, nonatomic) TSTFormulaPredArg *predArg1; @property (retain, nonatomic) TSTFormulaPredArg *predArg2; @property (readonly, nonatomic) BOOL backwardCompatiblePrePivot; @property (readonly, nonatomic) BOOL canDowngradeForPrePivotFormat; + (id)defaultPredicateForType:(unsigned char)a0 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a1 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a2; + (id)defaultPredicateForType:(unsigned char)a0 argumentCellReference:(id)a1 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a2; + (BOOL)isThresholdNeededForType:(unsigned char)a0; - (id)init; - (unsigned long long)hash; - (id).cxx_construct; - (void).cxx_destruct; - (BOOL)isEqual:(id)a0; - (id)copyWithZone:(struct _NSZone { } *)a0; - (void)encodeToArchive:(void *)a0 archiver:(id)a1; - (id)initFromArchive:(const void *)a0; - (void)setFormula:(id)a0; - (void)recreateFormula; - (BOOL)containsUidReferences; - (id)copyByClearingUids:(id)a0 containingTableUID:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a1; - (id)copyByConvertingBaseToChrome:(id)a0 inOwner:(id)a1 inCellCoordinate:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a2; - (id)copyByConvertingChromeToBase:(id)a0 inOwner:(id)a1 inCellCoordinate:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a2; - (id)copyByOffsettingRelativeReferencesWithOffset:(struct TSUColumnRowOffset { int x0; int x1; })a0; - (id)copyByRemappingHostCellAgnosticOwnerUIDsWithMap:(const void *)a0 rewriteContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a1 error:(BOOL *)a2; - (id)copyByRemappingOwnerUIDsWithMap:(const void *)a0 rewriteContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a1 error:(BOOL *)a2; - (id)copyByRewritingWithContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a0 rewriteBlock:(id /* block */)a1; - (id)copyByRewritingWithSpec:(id)a0 inOwner:(id)a1 inCellCoordinate:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a2; - (id)copyByUpdatingLinkedTable:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a1; - (id)copyByUpgradingToLinkedRefForTable:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a1; - (id)copyToGeometricFormForHiddenRowsWithTableInfo:(id)a0 containsBadRef:(BOOL *)a1; - (id)copyToGeometricFormWithRewriteContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a0; - (id)copyToUidFormForConditionalStylesWithTableInfo:(id)a0 containingCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a1 preserveHostCell:(BOOL)a2; - (id)copyToUidFormForHiddenRowsWithTableInfo:(id)a0; - (id)copyToUidFormWithRewriteContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a0; - (struct TSCECrossTableReference { struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x0; struct TSCERelativeCellCoordinate { int x0; short x1; BOOL x2; BOOL x3; } x1; })crossTableRefParam1; - (struct TSCECrossTableReference { struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x0; struct TSCERelativeCellCoordinate { int x0; short x1; BOOL x2; BOOL x3; } x1; })crossTableRefParam2; - (id)dataList1; - (id)downgradeForPrePivotFormatForLocale:(id)a0; - (struct TSCENumberValue { void /* function */ **x0; struct TSUDecimal { struct { unsigned long long x0[2]; } x0; } x1; struct TSCEFormat { id x0; unsigned int x1; unsigned char x2; struct TSCEDurationFormat { unsigned char x0 : 1; unsigned char x1 : 6; unsigned char x2 : 6; unsigned char x3 : 3; } x3; struct TSCEBaseFormat { unsigned char x0; unsigned char x1; BOOL x2; } x4; struct TSCEFractionFormat { char x0; } x5; struct TSCENumberFormat { unsigned char x0; unsigned char x1 : 3; unsigned char x2 : 1; unsigned char x3 : 1; unsigned short x4; } x6; } x2; unsigned short x3; BOOL x4; })durationParam1; - (struct TSCENumberValue { void /* function */ **x0; struct TSUDecimal { struct { unsigned long long x0[2]; } x0; } x1; struct TSCEFormat { id x0; unsigned int x1; unsigned char x2; struct TSCEDurationFormat { unsigned char x0 : 1; unsigned char x1 : 6; unsigned char x2 : 6; unsigned char x3 : 3; } x3; struct TSCEBaseFormat { unsigned char x0; unsigned char x1; BOOL x2; } x4; struct TSCEFractionFormat { char x0; } x5; struct TSCENumberFormat { unsigned char x0; unsigned char x1 : 3; unsigned char x2 : 1; unsigned char x3 : 1; unsigned short x4; } x6; } x2; unsigned short x3; BOOL x4; })durationParam2; - (void)encodeToPrePivotArchive:(void *)a0 archiver:(id)a1; - (void)encodeToPrePivotArchive:(void *)a0 archiver:(id)a1 encodingForSOS:(BOOL)a2; - (BOOL)evaluateAtCellID:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a0 onOwnerUID:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a1 calcEngine:(id)a2; - (unsigned char)expectedArgTypeForPredicateType:(unsigned char)a0 firstArg:(BOOL)a1; - (void)getPrecedents:(void *)a0 calcEngine:(id)a1 hostOwnerUID:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a2 hostCellID:(const struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } *)a3; - (BOOL)hasBadRefWithUidInfo; - (id)initFromPrePivotArchive:(const void *)a0; - (id)initWithLiteralDateType:(unsigned char)a0 date1:(id)a1 date2:(id)a2 number1:(double)a3 number2:(double)a4 qualifier1:(unsigned char)a5 qualifier2:(unsigned char)a6 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a7 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a8; - (id)initWithLiteralDateType:(unsigned char)a0 date1:(id)a1 date2:(id)a2 number1:(double)a3 number2:(double)a4 qualifier1:(unsigned char)a5 qualifier2:(unsigned char)a6 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a7 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a8 forConditionalStyle:(BOOL)a9; - (id)initWithLiteralDurationType:(unsigned char)a0 duration1:(double)a1 durationUnits1:(unsigned char)a2 duration2:(double)a3 durationUnits2:(unsigned char)a4 qualifier:(unsigned char)a5 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a6 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a7; - (id)initWithLiteralNumberType:(unsigned char)a0 number1:(double)a1 number2:(double)a2 qualifier:(unsigned char)a3 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a4 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a5; - (id)initWithLiteralTextType:(unsigned char)a0 string:(id)a1 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a2 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a3; - (id)initWithPredicateType:(unsigned char)a0 arg0:(id)a1 arg1:(id)a2 arg2:(id)a3 qualifier1:(unsigned char)a4 qualifier2:(unsigned char)a5 forConditionalStyle:(BOOL)a6; - (id)initWithPredicateType:(unsigned char)a0 arg1:(id)a1 arg2:(id)a2 qualifier1:(unsigned char)a3 qualifier2:(unsigned char)a4 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a5 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a6; - (id)initWithPredicateType:(unsigned char)a0 arg1:(id)a1 arg2:(id)a2 qualifier1:(unsigned char)a3 qualifier2:(unsigned char)a4 argumentCellRef:(struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; })a5 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a6 forConditionalStyle:(BOOL)a7; - (id)initWithPredicateType:(unsigned char)a0 arg1:(id)a1 arg2:(id)a2 qualifier1:(unsigned char)a3 qualifier2:(unsigned char)a4 argumentCellReference:(id)a5 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a6 forConditionalStyle:(BOOL)a7; - (BOOL)isEqualForInspector:(id)a0 atHostCoordinate:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a1; - (void)iterateFormulasWithContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a0 shouldStop:(BOOL *)a1 block:(id /* block */)a2; - (unsigned char)p_argTypeForPredArg:(id)a0 argNum:(unsigned long long)a1 calculationEngine:(id)a2 hostCell:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a3; - (struct TSCEFormulaCreator { id /* block */ x0; })p_creatorForPeriodBoundaryWithScale:(unsigned char)a0 direction:(unsigned char)a1 offset:(id)a2 argIndex:(unsigned int)a3 earlierBound:(BOOL)a4 isCalPers:(BOOL)a5; - (BOOL)p_isEqualForNonFormulaItems:(id)a0; - (void)p_populateMembersFromFormula; - (void)p_setPredicateType:(unsigned char)a0; - (void)p_setQualifier1:(unsigned char)a0; - (void)p_setQualifier2:(unsigned char)a0; - (void)p_smokeTestThePredicate; - (BOOL)p_testDataTypesForArg0:(unsigned char)a0 arg1:(unsigned char)a1 arg2:(unsigned char)a2 predShouldReturn:(BOOL *)a3; - (unsigned char)predArg0Type; - (id)predicateArg1atBaseHostCoord:(struct TSUModelCellCoord { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; })a0 calcEngine:(id)a1; - (id)predicateArg2atBaseHostCoord:(struct TSUModelCellCoord { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; })a0 calcEngine:(id)a1; - (void)remapOwnerUIDsWithMap:(const void *)a0 rewriteContext:(struct TSCEFormulaRewriteContext { id x0; id x1; struct TSCEFormulaRewriteContextRecord { struct TSCEFormulaContainingCell { struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x0; struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; struct TSUColumnRowOffset { int x0; int x1; } x2; BOOL x3; BOOL x4; BOOL x5; BOOL x6; BOOL x7; BOOL x8; BOOL x9; } x2; } *)a1 error:(BOOL *)a2; - (void)rewriteFormulaWithBlock:(id /* block */)a0; - (void)rewriteNumberToDurationForSageImport:(const struct TSCECellRef { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } x1; } *)a0 durationUnitLargest:(unsigned char)a1; - (void)setArgumentAt:(long long)a0 withPredArg:(id)a1; - (void)setHostCell:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0 hostColumnUID:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a1 hostRowUID:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a2; - (void)upgradeTopAndBottom; - (BOOL)useColumnRefForArg0; @end