libmyrtx

Contents:

  • Getting Started with libmyrtx
    • Prerequisites
    • Building from Source
    • Using the Build Script
    • Integration into Your Project
      • Using CMake
      • Using as an Installed Library
      • Manual Integration
    • Basic Usage Example
    • Next Steps
  • User Guides
    • Arena Allocator Guide
      • Overview
      • Why Use an Arena Allocator?
      • Basic Usage
        • Initializing an Arena
        • Allocating Memory from the Arena
      • Comparison: Arena Allocator vs. malloc/free
      • Temporary Arenas: When and How to Use
      • Scratch Arenas: Short-lived, Automatic Memory Management
      • A More Comprehensive Example: Parser with Arena Allocator
      • Recommendations for Different Arena Types
      • Performance Optimization with the Arena Allocator
      • Conclusion
    • Context System Guide
      • Overview
      • Why Use the Context System?
      • Basic Usage
        • Creating and Managing Contexts
        • Error Handling
        • State Management
      • Advanced Features
        • Context Hierarchy
      • Ownership Example
        • Context Extensions
      • Real-world Example: Web Server Request Handling
      • Best Practices
      • Conclusion
    • String Utility Guide
      • Overview
      • Why a Special String Library?
      • Core Concepts
        • Dynamic Strings
        • String Views
      • Basic Usage
        • Creating and Freeing Strings
        • With Arena Allocator
      • String Operations
        • Appending Data
        • String Comparison
        • String Modification
        • String Searching
        • Using String Views
        • Creating Formatted Strings
      • Advanced Concepts
        • Memory Reservation
        • Memory Optimization
        • String Extraction
      • Efficiency and Performance
      • Best Practices
        • Migration Example
        • Error Handling
      • Conclusion
    • Hash Table Guide
      • What is a Hash Table?
      • When to Use a Hash Table
      • Basic Usage
        • Creating a Hash Table
        • Inserting Elements
        • Finding Elements
        • Removing Elements
        • Getting Hash Table Statistics
      • Advanced Usage
        • Custom Hash Functions
        • Iterating Over a Hash Table
        • Using with Complex Data Types
      • Performance Considerations
      • Common Use Cases
      • Conclusion
    • AVL Tree Guide
      • What is an AVL Tree?
      • When to Use an AVL Tree
      • Basic Usage
        • Creating an AVL Tree
        • Inserting Elements
        • Finding Elements
        • Removing Elements
        • Traversing the Tree
        • Finding Min/Max Elements
      • Advanced Usage
        • Custom Comparison Functions
        • Custom Memory Management
      • Performance Considerations
      • Common Use Cases
      • Conclusion
  • API Reference
    • Memory API
      • Arena Allocator
        • Types
        • Initialization and Cleanup
        • Memory Allocation
        • Temporary Arenas
        • Scratch Arenas
        • Helper Functions
        • Statistics and Information
    • Collections API
      • AVL Tree
        • Types
        • Creation and Destruction
        • Insertion and Removal
        • Lookup Functions
        • Traversal Functions
        • Utility Functions
        • Min/Max Functions
        • Predefined Comparison Functions
      • Hash Table
        • Types
        • Creation and Destruction
        • Insertion and Removal
        • Lookup Functions
        • Utility Functions
        • Predefined Hash Functions
    • Context API
      • Context Management
        • Types
        • Creation and Destruction
        • Ownership Semantics
        • Error Handling
        • Extension Management
        • State Management
        • Inheritance and Propagation
    • String API
      • Overview
      • Types
      • Creation and Destruction
      • String Operations
      • Replace
      • String Views
      • String Access
      • String Modification
      • String Searching
      • String Comparison
      • String Modification
      • String Utility Functions
  • Examples
    • Arena Allocator Example
      • Expected Output
      • Compilation and Execution
      • Notes
    • AVL Tree Example
      • Complete Example
      • Expected Output
      • Key Concepts Demonstrated
      • Building and Running
      • Further Exploration
    • Context System Example
      • Overview
      • Example Code
      • How to Compile and Run
      • Expected Output
      • Code Walkthrough
      • Key Insights
    • String Manipulation Example
      • Overview
      • Example Code
      • How to Compile and Run
      • Expected Output
      • Code Walkthrough
      • Key Insights
    • Hash Table Example
      • Overview
      • Code Example
      • Explanation
      • Compilation
      • Expected Output
libmyrtx
  • User Guides
  • View page source

User Guides

This section provides detailed guides on using different components of the libmyrtx library.

Available Guides:

  • Arena Allocator Guide
    • Overview
    • Why Use an Arena Allocator?
    • Basic Usage
    • Comparison: Arena Allocator vs. malloc/free
    • Temporary Arenas: When and How to Use
    • Scratch Arenas: Short-lived, Automatic Memory Management
    • A More Comprehensive Example: Parser with Arena Allocator
    • Recommendations for Different Arena Types
    • Performance Optimization with the Arena Allocator
    • Conclusion
  • Context System Guide
    • Overview
    • Why Use the Context System?
    • Basic Usage
    • Advanced Features
    • Ownership Example
    • Real-world Example: Web Server Request Handling
    • Best Practices
    • Conclusion
  • String Utility Guide
    • Overview
    • Why a Special String Library?
    • Core Concepts
    • Basic Usage
    • String Operations
    • Advanced Concepts
    • Efficiency and Performance
    • Best Practices
    • Conclusion
  • Hash Table Guide
    • What is a Hash Table?
    • When to Use a Hash Table
    • Basic Usage
    • Advanced Usage
    • Performance Considerations
    • Common Use Cases
    • Conclusion
  • AVL Tree Guide
    • What is an AVL Tree?
    • When to Use an AVL Tree
    • Basic Usage
    • Advanced Usage
    • Performance Considerations
    • Common Use Cases
    • Conclusion
Previous Next

© Copyright 2025, Mike Großmann.

Built with Sphinx using a theme provided by Read the Docs.