LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line_citations.cpp File Reference

The citation registry table and its lookup. More...

#include "line/io/line_citations.h"
#include <algorithm>
#include <cctype>
#include <set>
Include dependency graph for line_citations.cpp:

Go to the source code of this file.

Namespaces

namespace  line
 Conservation laws of a layered queueing network, enumerated from its structure.
namespace  line::io

Functions

const std::map< std::string, Citation > & line::io::citation_registry ()
 The whole method name -> reference table, built once.
std::vector< Citation > line::io::line_citations (const std::vector< std::string > &method_names)
 The references for METHOD NAMES, de-duplicated by key, in order of appearance.
std::vector< Citation > line::io::line_citations_for_method (const std::string &method)
 Convenience for the default/<actual> compound a solver reports.

Detailed Description

The citation registry table and its lookup.

See line/io/line_citations.h.

The table is GENERATED FROM matlab/src/io/line_citations.m, which is the reference implementation, so the registries carry the same wording. When a method is added or renamed, add it there and to the JAR and python twins in the same change, and regenerate this file rather than editing it by hand in isolation.

THE COUNT IS NOT THE SAME IN ALL FOUR, and the differences are deliberate: this table carries 520 names, MATLAB the same 520 (the interlock.refpath pair was MATLAB-only until the 2026-09-25 port) and python 528 (its nlp/mol layered family is python-only, the parity gap recorded in _kb/07-cross-language-parity.md). A name for a method THIS port implements must be here: lqn_balance_equations and lqn_balance_equations.layers were missing until 2026-09-13 although api/lqn/lqn_balance_equations.h has emitted both since the API landed, which is the silent loss of attribution the registry exists to prevent.

It lives in a .cpp rather than the header because a 520-entry initializer compiled into every translation unit that wants a reference would be a real cost for a table that is consulted once, at write-up time.

Definition in file line_citations.cpp.