How meta/folly works
Folly is a performance-oriented C++20 library of largely independent components, not a single application with one end-to-end workflow. A user selects a component for a task—such as storing data, coordinating asynchronous work, or parsing JSON—and uses its API to produce a result. The graph preserves major README capabilities and the sampled pipeline and reviewer-tool relationships. Several README-listed modules are absent from the supplied tree; unsampled implementation details and links are omitted.
Main entry points: MPMCPipeline.h MPMC pipeline · codex-reviewer.py Codex reviewer · F14Map.h F14 maps and sets · small_vector.h Small vector
Components 25
Containers and data
- F14 maps and sets
folly/container/F14Map.h - Small vector
folly/container/small_vector.h - Sorted vector maps
folly/container/sorted_vector_types.h - Concurrent hash map
folly/concurrency/ConcurrentHashMap.h - Hive container
folly/container/Hive.h - Dynamic and JSON
folly/json/DynamicParser.h - MPMC pipeline
folly/MPMCPipeline.h - Pipeline queues
folly/detail/MPMCPipelineDetail.h
Concurrency and async
- Executors
folly/executors/ThreadPoolExecutor.cpp - Futures and promises
folly/futures/Future.h - Coroutine utilities
folly/coro/Task.h - Fiber manager
folly/fibers/FiberManager.cpp - Channels
folly/channels/Channel.h - Async I/O event loop
folly/io/async/EventBaseManager.h - Timer timeouts
folly/io/async/TimerFDTimeoutManager.cpp - Synchronized access
folly/Synchronized.h - Shared mutex
folly/SharedMutex.h - Thread local storage
folly/ThreadLocal.h
Utilities and diagnostics
- Conversions
folly/Conv.h - Scope guard
folly/ScopeGuard.h - Move-only function
folly/Function.h - Symbolizer
folly/debugging/symbolizer/Symbolizer.h
Review agents
- Codex reviewer
folly/agents/critic-iterate/codex-reviewer.py - Isolated agent
folly/agents/scripts/isolated_agent.py
Other components
- C++ library user
Connections 18
- C++ library user → F14 maps and sets: uses maps
- C++ library user → Small vector: uses vectors
- C++ library user → Sorted vector maps: uses maps
- C++ library user → Concurrent hash map: uses map
- C++ library user → Dynamic and JSON: parses JSON
- C++ library user → MPMC pipeline: processes stages
folly/MPMCPipeline.h - MPMC pipeline → Pipeline queues: uses queues
folly/detail/MPMCPipelineDetail.h - C++ library user → Executors: schedules tasks
- C++ library user → Futures and promises: composes futures
- C++ library user → Coroutine utilities: runs coroutines
- C++ library user → Async I/O event loop: uses event loop
- C++ library user → Synchronized access: protects data
- C++ library user → Shared mutex: uses lock
- C++ library user → Thread local storage: stores thread data
- C++ library user → Conversions: converts values
- C++ library user → Scope guard: guards scope
- C++ library user → Move-only function: uses callable
- Codex reviewer → Isolated agent: runs agent
folly/agents/critic-iterate/codex-reviewer.py