class LeafNode

Declaration

template <typename KeyT,
          typename ValT,
          unsigned int N,
          typename Traits>
class LeafNode { /* full declaration omitted */ };

Declared at: llvm/include/llvm/ADT/IntervalMap.h:563

Templates

KeyT
ValT
unsigned int N
Traits

Method Overview

  • public unsigned int findFrom(unsigned int i, unsigned int Size, KeyT x) const
  • public unsigned int insertFrom(unsigned int & Pos, unsigned int Size, KeyT a, KeyT b, ValT y)
  • public unsigned int safeFind(unsigned int i, KeyT x) const
  • public ValT safeLookup(KeyT x, ValT NotFound) const
  • public const KeyT & start(unsigned int i) const
  • public KeyT & start(unsigned int i)
  • public const KeyT & stop(unsigned int i) const
  • public KeyT & stop(unsigned int i)
  • public const ValT & value(unsigned int i) const
  • public ValT & value(unsigned int i)

Methods

unsigned int findFrom(unsigned int i,
                      unsigned int Size,
                      KeyT x) const

Description

findFrom - Find the first interval after i that may contain x.

Declared at: llvm/include/llvm/ADT/IntervalMap.h:579

Parameters

unsigned int i
Starting index for the search.
unsigned int Size
Number of elements in node.
KeyT x
Key to search for.

Returns

First index with !stopLess(key[i].stop, x), or size. This is the first interval that can possibly contain x.

unsigned int insertFrom(unsigned int& Pos,
                        unsigned int Size,
                        KeyT a,
                        KeyT b,
                        ValT y)

Description

insertFrom - Add mapping of [a;b] to y if possible, coalescing as much as possible. This may cause the node to grow by 1, or it may cause the node to shrink because of coalescing.

Declared at: llvm/include/llvm/ADT/IntervalMap.h:613

Parameters

unsigned int& Pos
Starting index = insertFrom(0, size, a)
unsigned int Size
Number of elements in node.
KeyT a
Interval start.
KeyT b
Interval stop.
ValT y
Value be mapped.

Returns

(insert position, new size), or (i, Capacity+1) on overflow.

unsigned int safeFind(unsigned int i,
                      KeyT x) const

Description

safeFind - Find an interval that is known to exist. This is the same as findFrom except is it assumed that x is at least within range of the last interval.

Declared at: llvm/include/llvm/ADT/IntervalMap.h:594

Parameters

unsigned int i
Starting index for the search.
KeyT x
Key to search for.

Returns

First index with !stopLess(key[i].stop, x), never size. This is the first interval that can possibly contain x.

ValT safeLookup(KeyT x, ValT NotFound) const

Description

safeLookup - Lookup mapped value for a safe key. It is assumed that x is within range of the last entry.

Declared at: llvm/include/llvm/ADT/IntervalMap.h:608

Parameters

KeyT x
Key to search for.
ValT NotFound
Value to return if x is not in any interval.

Returns

The mapped value at x or NotFound.

const KeyT& start(unsigned int i) const

Declared at: llvm/include/llvm/ADT/IntervalMap.h:565

Parameters

unsigned int i

KeyT& start(unsigned int i)

Declared at: llvm/include/llvm/ADT/IntervalMap.h:569

Parameters

unsigned int i

const KeyT& stop(unsigned int i) const

Declared at: llvm/include/llvm/ADT/IntervalMap.h:566

Parameters

unsigned int i

KeyT& stop(unsigned int i)

Declared at: llvm/include/llvm/ADT/IntervalMap.h:570

Parameters

unsigned int i

const ValT& value(unsigned int i) const

Declared at: llvm/include/llvm/ADT/IntervalMap.h:567

Parameters

unsigned int i

ValT& value(unsigned int i)

Declared at: llvm/include/llvm/ADT/IntervalMap.h:571

Parameters

unsigned int i