Class RangeAnalyzer

Class Documentation

class RangeAnalyzer

Utility that allows finding calls from a range in its flattened representation.

Public Functions

RangeAnalyzer(CallableCache *originalCache, CallableCache *flattenedCache, serialization::GPAToken const *delimiters = nullptr, size_t delimitersCount = 0)
~RangeAnalyzer()
uint64_t FindCallAtIndex(uint64_t originalCacheCallIndex)

Finds call at provided index from original cache in flattened cache.

Returns

Index of the call in the flattened cache. Returns UINT64_MAX, if not found.

uint64_t FindCallAtDelimiter(uint64_t delimiterIndex)

Finds call at delimiter index from original cache in flattened cache.

Returns

Index of the call in the flattened cache. Returns UINT64_MAX, if not found.

void FindDelimiters(CallMapping const **foundDelimiters, size_t *foundDelimitersCount)

Finds all delimiters in range and provides indices from both ranges.