Classes | Namespaces | Macros | Functions
graphcycles.cc File Reference
#include "absl/base/attributes.h"
#include "absl/base/internal/low_level_alloc.h"
#include "absl/synchronization/internal/graphcycles.h"
#include <algorithm>
#include <array>
#include "absl/base/internal/hide_ptr.h"
#include "absl/base/internal/raw_logging.h"
#include "absl/base/internal/spinlock.h"
Include dependency graph for graphcycles.cc:

Go to the source code of this file.

Classes

struct  absl::synchronization_internal::GraphCycles::Rep
 

Namespaces

 absl
 
 absl::synchronization_internal
 

Macros

#define HASH_FOR_EACH(elem, eset)   for (int32_t elem, _cursor = 0; (eset).Next(&_cursor, &elem); )
 

Functions

static void absl::synchronization_internal::BackwardDFS (GraphCycles::Rep *r, int32_t n, int32_t lower_bound)
 
static Node * absl::synchronization_internal::FindNode (GraphCycles::Rep *rep, GraphId id)
 
static bool absl::synchronization_internal::ForwardDFS (GraphCycles::Rep *r, int32_t n, int32_t upper_bound)
 
static void absl::synchronization_internal::MoveToList (GraphCycles::Rep *r, Vec< int32_t > *src, Vec< int32_t > *dst)
 
static void absl::synchronization_internal::Reorder (GraphCycles::Rep *r)
 
static void absl::synchronization_internal::Sort (const Vec< Node *> &, Vec< int32_t > *delta)
 

Macro Definition Documentation

◆ HASH_FOR_EACH

#define HASH_FOR_EACH (   elem,
  eset 
)    for (int32_t elem, _cursor = 0; (eset).Next(&_cursor, &elem); )

Definition at line 192 of file graphcycles.cc.

Variable Documentation

◆ capacity_

uint32_t capacity_
private

Definition at line 130 of file graphcycles.cc.

◆ in

NodeSet in

Definition at line 282 of file graphcycles.cc.

◆ kHashTableSize

constexpr uint32_t kHashTableSize = 8171
staticprivate

Definition at line 331 of file graphcycles.cc.

◆ masked_ptr

uintptr_t masked_ptr

Definition at line 281 of file graphcycles.cc.

◆ next_hash

int32_t next_hash

Definition at line 279 of file graphcycles.cc.

◆ nodes_

const Vec<Node*>* nodes_
private

Definition at line 333 of file graphcycles.cc.

◆ nstack

int nstack

Definition at line 285 of file graphcycles.cc.

◆ occupied_

uint32_t occupied_
private

Definition at line 209 of file graphcycles.cc.

◆ out

NodeSet out

Definition at line 283 of file graphcycles.cc.

◆ priority

int priority

Definition at line 284 of file graphcycles.cc.

◆ ptr_

T* ptr_
private

Definition at line 127 of file graphcycles.cc.

◆ rank

int32_t rank

Definition at line 277 of file graphcycles.cc.

◆ size_

uint32_t size_
private

Definition at line 129 of file graphcycles.cc.

◆ space_

T space_[kInline]
private

Definition at line 128 of file graphcycles.cc.

◆ stack

void* stack[40]

Definition at line 286 of file graphcycles.cc.

◆ table_

std::array<int32_t, kHashTableSize> table_
private

Definition at line 208 of file graphcycles.cc.

◆ version

uint32_t version

Definition at line 278 of file graphcycles.cc.

◆ visited

bool visited

Definition at line 280 of file graphcycles.cc.



abseil_cpp
Author(s):
autogenerated on Mon Feb 28 2022 21:31:22