shape_rt.h#
Shape-inference functions for lightweight runtime operators in the ai.rt domain.
-
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_NAMESPACEso both names resolve to the same namespace.Symbol-visibility attribute for the public onnx-light C++ API.
Defined as empty because onnx-light does not require explicit
__declspec(dllexport)or__attribute__((visibility("default")))annotations — visibility is controlled at the shared-library level. The macro is provided so that vendored ONNX headers that decorate their declarations withONNX_APIcompile without modification.Namespace alias so that ONNX C++ code (and consumers such as onnxruntime) that refers to the literal
onnxnamespace — rather than theONNX_NAMESPACEmacro — resolves to the onnx-light namespace. The standard onnx package lives innamespace onnx; onnx-light usesonnx_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 fromonnx.-
namespace onnx_optim
-
namespace shapes
-
namespace rt#
Functions
-
void ComputeShapeDelayedInitializer(ShapesContext &ctx, const NodeProto &node)#
This function computes the output
OptimTensorof aDelayedInitializernode and stores it inctx.DelayedInitializeris a lightweight runtime-only operator with no inputs. Its output shape is given by the requiredshapeattribute and its element type is given by the requireddtypeattribute. onnx-light accepts onlyload_devicevalues"cpu"and"file", requiresruntime_device == "cpu", and rejectsSTRINGoutputs because that dtype has no raw-byte tensor representation in the runtime.Validation failures are reported through
EXT_ENFORCE_INVALIDwhennode.op_type()is not"DelayedInitializer", whennodedeclares inputs or no outputs, whenshapeis missing or contains a negative dimension, whendtypeis missing or unsupported, or when the device / location attributes are invalid.
Variables
-
constexpr const char *kAiRtDomain = "ai.rt"#
The ai.rt operator domain string.
-
void ComputeShapeDelayedInitializer(ShapesContext &ctx, const NodeProto &node)#
-
namespace rt#
-
namespace shapes
-
namespace onnx_optim