pattern_registry.h#

namespace onnx_light

Alias that makes onnx-light headers compatible with code that references ONNX_LIGHT_NAMESPACE (the macro used in the standard onnx package).

Set to ONNX_LIGHT_NAMESPACE so both names resolve to the same namespace.

Symbol-visibility attribute for the public onnx-light C++ API.

Maps the upstream compatibility macro to onnx-light’s explicit proto ABI annotation. This keeps declarations from vendored ONNX headers visible when lib_onnx_proto uses hidden visibility by default.

Namespace alias so that ONNX C++ code (and consumers such as onnxruntime) that refers to the literal onnx namespace — rather than the ONNX_NAMESPACE macro — resolves to the onnx-light namespace. The standard onnx package lives in namespace onnx; onnx-light uses onnx_light (via ONNX_LIGHT_NAMESPACE), so this alias keeps onnx-light a true drop-in. It is only introduced when the onnx-light namespace differs from onnx.

namespace core
namespace builder

Typedefs

using PatternFactory = std::function<std::unique_ptr<PatternOptimization>()>#

Factory creating one stateless graph-rewriting pattern.

Functions

void RegisterPattern(const std::string &name, PatternFactory factory)#

Registers a pattern factory under a stable diagnostic name.

Registration order determines the order returned by :cpp:func:CreateRegisteredPatterns. Names must be non-empty and unique.

std::vector<std::string> RegisteredPatternNames()#

Returns the registered pattern names in registration order.

std::vector<std::unique_ptr<PatternOptimization>> CreateRegisteredPatterns()#

Creates one pattern instance from every registered factory.

std::unique_ptr<PatternOptimization> CreateRegisteredPattern(const std::string &name, std::optional<int> priority = std::nullopt)#

Creates one registered pattern by name.

When priority is specified, it overrides the pattern default.

class PatternRegistrationError : public std::runtime_error#
#include <pattern_registry.h>

Reports an invalid or duplicate pattern registration.

Public Functions

inline explicit PatternRegistrationError(const std::string &message)#

Constructs an error with the given diagnostic message.