Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: SpectraL519/cpp-gl
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: SpectraL519/cpp-gl
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: cpp-gl-v3
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 5 commits
  • 72 files changed
  • 1 contributor

Commits on Jul 27, 2026

  1. Ensure const-correctness for graph element properties storage

    - Aligned the vertex/edge descriptor types to allow:
      - Proper implicit conversion from non-const to const variant
      - Comparison between a const and non-const variants
    - Refactored the `graph` class and the internal implementation types to define and utilize const and non-const element descriptors based on the graph's constness
    - Relaxed the `c_graph` concept to allow multiple value/type categories of the `graph` class
    - Introduced helper typedefs to easily extract the typedefs from a graph type in generic contexts
    - Refactored the internal specialized implementation types to use the explicit object parameter feature in order to be used as mixin base types instead of simple static method dispatchers
    - Aligned the algorithm implementations to work with the new, aligned graph implementation
    SpectraL519 authored Jul 27, 2026
    Configuration menu
    Copy the full SHA
    78fba0a View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2026

  1. Ensure const-correctness for hypergraph element properties storage

    - Aligned the hyperedge descriptor type to allow:
      - Proper implicit conversion from non-const to const variant
      - Comparison between a const and non-const variants
    - Refactored the `hypergraph` class to define and utilize const and non-const element descriptors based on the hypergraph's constness
    - Relaxed the `c_hypergraph` concept to allow various value/type categories of the `hypergraph` class
    - Introduced helper typedefs to easily extract the typedefs from a hypergraph type in generic contexts
    - Aligned the algorithm implementations to work with the new, aligned graph implementation
    - Additional cleanup of the GL module
    SpectraL519 authored Jul 30, 2026
    Configuration menu
    Copy the full SHA
    00d72d7 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2026

  1. Use stack frame tracking for non-recursive DFS algorithms

    In both GL and HGL modules:
    - Added an `Extension` template parameter and an `ext` member to the `search_node` types
    - Aligned the `dfs` templates to properly utilize an extended `search_node` type to perform a true post-order execution of the `post_visit` callback
    - Replaced the use of `std::vector` for single-root ranges in concrete algorithms with `std::array`
    
    In the GL module:
    - Replaced the dedicated `dijkstra_search_node` type with a simple extension of the generic `search_node` type
    
    In the HGL module:
    - Replaced the old `search_tree` alias for a vector of search nodes with a dedicated `search_tree` type with its dedicated, smaller nodes
    SpectraL519 authored Aug 2, 2026
    Configuration menu
    Copy the full SHA
    8223a2a View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2026

  1. Graph/Hypergraph output format cleanup

    Removed trailing new line characters in graph/hypergraph stream output
    SpectraL519 authored Aug 3, 2026
    Configuration menu
    Copy the full SHA
    b06b4d0 View commit details
    Browse the repository at this point in the history
  2. [GL] Refactor the algorithm templates to use search-node callbacks

    - Changed the callback type requirements for the algorithm templates to accept a `search_node` instance instead of relying on raw IDs
    - Aligned the algorithm callback builders and concrete algorithms to use the new `search_node` callback approach
    SpectraL519 authored Aug 3, 2026
    Configuration menu
    Copy the full SHA
    94064d9 View commit details
    Browse the repository at this point in the history
Loading