@class NSIndexSet; @interface TSTCellRegion : NSObject @property (readonly, nonatomic) struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; } boundingModelCellRect; @property (readonly, nonatomic) struct TSUViewCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; } boundingViewCellRect; @property (nonatomic) struct TSUCellRect { struct TSUCellCoord { unsigned int row; unsigned short column; BOOL _preserveRow; BOOL _preserveColumn; } origin; struct { unsigned int numberOfColumns; unsigned int numberOfRows; } size; } boundingCellRange; @property (nonatomic) unsigned long long cellCount; @property (retain, nonatomic) NSIndexSet *intersectingColumnsIndexSet; @property (retain, nonatomic) NSIndexSet *intersectingRowsIndexSet; @property (nonatomic) struct TSUCellCoord { unsigned int row; unsigned short column; BOOL _preserveRow; BOOL _preserveColumn; } firstCellID; @property (nonatomic) struct TSUCellCoord { unsigned int row; unsigned short column; BOOL _preserveRow; BOOL _preserveColumn; } lastCellID; @property (readonly, nonatomic) struct vector> { struct TSUCellRect *__begin_; struct TSUCellRect *__end_; struct __compressed_pair> { struct TSUCellRect *__value_; } __end_cap_; } cellRanges; @property (readonly, nonatomic) unsigned long long cellRangeCount; @property (readonly, nonatomic) BOOL isEmpty; @property (readonly, nonatomic) BOOL isRectangle; @property (readonly, nonatomic) unsigned long long sizeClass; @property (readonly, nonatomic) struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } boundingTopLeftCellID; @property (readonly, nonatomic) struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } boundingBottomRightCellID; @property (readonly, nonatomic) unsigned int numberOfIntersectingColumns; @property (readonly, nonatomic) unsigned int numberOfIntersectingRows; + (id)regionFillingColumnsFromRegion:(id)a0; + (id)invalidRegion; + (id)region:(id)a0 addingRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a1; + (id)region:(id)a0 addingRegion:(id)a1; + (id)region:(id)a0 intersectingRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a1; + (id)region:(id)a0 subtractingRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a1; + (id)region:(id)a0 subtractingRegion:(id)a1; + (id)regionFillingRowsFromRegion:(id)a0; + (id)regionFromColumnIndices:(id)a0; + (id)regionFromRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; + (id)regionFromRowIndices:(id)a0; + (id)unionEveryRangeInRegion:(id)a0 withRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a1; + (struct vector> { struct TSUCellRect *x0; struct TSUCellRect *x1; struct __compressed_pair> { struct TSUCellRect *x0; } x2; })combineNonOverlappingCellRanges:(void *)a0 addingOverlappingCellRanges:(void *)a1; + (id)region:(id)a0 intersectingRegion:(id)a1; + (id)region:(id)a0 subtractingColumnIndexes:(id)a1; + (id)region:(id)a0 subtractingRowIndexes:(id)a1; + (id)regionFromCellCoordSet:(const void *)a0; + (id)regionFromCellDiffMap:(id)a0 withTableInfo:(id)a1; + (id)regionFromCellIDVector:(const void *)a0; + (id)regionFromCellMap:(id)a0 withTableInfo:(id)a1; + (id)regionFromCellMap:(id)a0 withTableInfo:(id)a1 passingTest:(id /* block */)a2; + (id)regionFromCellRangeVector:(const void *)a0; + (id)regionFromCellUIDVector:(const void *)a0 withTableInfo:(id)a1; + (id)regionFromColumnIndexes:(id)a0 rowIndexes:(id)a1; + (id)regionFromColumnIndices:(id)a0 rowRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1; + (id)regionFromMergeActionArray:(id)a0 withTableInfo:(id)a1; + (id)regionFromMergeList:(const void *)a0; + (id)regionFromModelCellRect:(struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; + (id)regionFromModelMergeList:(const void *)a0; + (id)regionFromOverlappingCellRangeVector:(const void *)a0; + (id)regionFromPropertyListRepresentation:(id)a0; + (id)regionFromRowIndices:(id)a0 columnRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1; + (id)regionFromViewCellRect:(struct TSUViewCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; + (id)regionFromViewCellRectVector:(const void *)a0; - (id)init; - (unsigned long long)hash; - (id)propertyListRepresentation; - (void)enumerateColumnsUsingBlock:(id /* block */)a0; - (id).cxx_construct; - (void)enumerateRowsUsingBlock:(id /* block */)a0; - (id)description; - (BOOL)isValid; - (void).cxx_destruct; - (BOOL)isEqual:(id)a0; - (id)mutableCopyWithZone:(struct _NSZone { } *)a0; - (id)copyWithZone:(struct _NSZone { } *)a0; - (id)regionByAddingRegion:(id)a0; - (BOOL)containsCellID:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a0; - (void)p_calculateAncillaryInformation; - (id)regionByIntersectingRowIndices:(id)a0; - (id)regionOffsetBy:(struct TSUColumnRowOffset { int x0; int x1; })a0; - (BOOL)containsCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (BOOL)containsCellRegion:(id)a0; - (void)enumerateCellIDsUsingBlock:(id /* block */)a0; - (void)enumerateCellRangesUsingBlock:(id /* block */)a0; - (void)enumerateColumnRangesUsingBlock:(id /* block */)a0; - (void)enumerateInDirection:(long long)a0 usingBlock:(id /* block */)a1; - (void)enumerateRowRangesUsingBlock:(id /* block */)a0; - (BOOL)equalsCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (BOOL)equalsCellRegion:(id)a0; - (void)fillCellRangeRowMajorSet:(void *)a0 leftToRight:(BOOL)a1; - (BOOL)intersectsCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (BOOL)intersectsColumn:(unsigned short)a0; - (BOOL)intersectsRow:(unsigned int)a0; - (void)p_insertRangeIntoRegion:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (BOOL)partiallyIntersectsCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (id)regionByAddingColumns:(id)a0; - (id)regionByAddingRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (id)regionByAddingRows:(id)a0; - (id)regionByApplyingRowMapping:(id)a0; - (id)regionByIntersectingColumnIndices:(id)a0; - (id)regionByIntersectingRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (id)regionByRemovingColumns:(id)a0; - (id)regionByRemovingRows:(id)a0; - (id)regionBySubtractingRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (id)regionBySubtractingRegion:(id)a0; - (id)regionByUnioningEveryRangeInRegionWithRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0; - (struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })suitableAnchor; - (struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })suitableCursor; - (void)saveToMessage:(void *)a0; - (id)initFromMessage:(const void *)a0; - (struct vector> { struct TSUModelCellRect *x0; struct TSUModelCellRect *x1; struct __compressed_pair> { struct TSUModelCellRect *x0; } x2; })modelCellRanges; - (void)enumerateGridColumnsUsingBlock:(id /* block */)a0; - (struct TSCECellCoordSet { struct map, std::allocator>> { struct __tree, std::__map_value_compare, std::less>, std::allocator>> { void *x0; struct __compressed_pair *>, std::allocator, void *>>> { struct __tree_end_node *> { void *x0; } x0; } x1; struct __compressed_pair, std::less>> { unsigned long long x0; } x2; } x0; } x0; })asCellCoordSet; - (BOOL)containsModelCellCoord:(struct TSUModelCellCoord { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; })a0; - (BOOL)containsModelCellRect:(struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (void)enumerateColumnRangesInReverseUsingBlock:(id /* block */)a0; - (void)enumerateColumnsInReverseUsingBlock:(id /* block */)a0; - (void)enumerateColumnsIntersectingCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0 usingBlock:(id /* block */)a1; - (void)enumerateGridRowsUsingBlock:(id /* block */)a0; - (void)enumerateMissingColumnsIntersectingCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0 usingBlock:(id /* block */)a1; - (void)enumerateMissingRowsIntersectingCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0 usingBlock:(id /* block */)a1; - (void)enumerateModelCellRectsUsingBlock:(id /* block */)a0; - (void)enumerateRowRangesInReverseUsingBlock:(id /* block */)a0; - (void)enumerateRowsInReverseUsingBlock:(id /* block */)a0; - (void)enumerateRowsIntersectingCellRange:(struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })a0 usingBlock:(id /* block */)a1; - (void)enumerateViewCellRectsUsingBlock:(id /* block */)a0; - (void)fillCellRangeColMajorSet:(void *)a0 topToBottom:(BOOL)a1; - (id)intersectingColumnsInRow:(unsigned int)a0; - (BOOL)intersectsCellRegion:(id)a0; - (BOOL)intersectsModelCellRect:(struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (id)isSingleCellWideOrHigh:(id)a0; - (struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; })largestRangeContainingCellID:(struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; })a0; - (id)newBottomToTopIterator; - (id)newIterator; - (id)newRightToLeftIterator; - (id)p_copy; - (void)p_copyFromRegion:(id)a0; - (BOOL)partiallyIntersectsModelCellRect:(struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (id)prunedCellRegionAgainstTable:(id)a0 behavior:(unsigned long long)a1; - (id)prunedCellRegionAgainstTable:(id)a0 behavior:(unsigned long long)a1 usingBlock:(id /* block */)a2; - (id)regionAfterColumnIndex:(unsigned short)a0; - (id)regionAfterColumnIndexRtoL:(unsigned short)a0; - (id)regionAfterRowIndex:(unsigned int)a0; - (id)regionByAddingModelCellRect:(struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (id)regionByAddingModelCellRegion:(id)a0; - (id)regionByAddingViewCellRect:(struct TSUViewCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (id)regionByAddingViewCellRegion:(id)a0; - (id)regionByCollapsingRangesForRemovedColumns:(id)a0; - (id)regionByCollapsingRangesForRemovedRows:(id)a0; - (id)regionByIntersectingRegion:(id)a0; - (id)regionByMovingColumnsFromRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a0 toIndex:(unsigned short)a1; - (id)regionByMovingRowsFromRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a0 toIndex:(unsigned int)a1; - (id)regionBySubtractingColumnIndexes:(id)a0; - (id)regionBySubtractingModelCellRect:(struct TSUModelCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (id)regionBySubtractingModelCellRegion:(id)a0; - (id)regionBySubtractingRowIndexes:(id)a0; - (id)regionBySubtractingViewCellRect:(struct TSUViewCellRect { struct TSUCellRect { struct TSUCellCoord { unsigned int x0; unsigned short x1; BOOL x2; BOOL x3; } x0; struct { unsigned int x0; unsigned int x1; } x1; } x0; })a0; - (id)regionBySubtractingViewCellRegion:(id)a0; - (id)regionByTrimmingAroundColumnIndices:(id)a0; - (id)regionByTrimmingAroundRowIndices:(id)a0; - (id)regionUpToColumnIndex:(unsigned short)a0; - (id)regionUpToColumnIndexRtoL:(unsigned short)a0 maxColumnIndex:(unsigned short)a1; - (id)regionUpToRowIndex:(unsigned int)a0; - (struct vector> { struct TSUCellRect *x0; struct TSUCellRect *x1; struct __compressed_pair> { struct TSUCellRect *x0; } x2; })rowBasedSubRangesOfCellCount:(unsigned long long)a0; @end