Module: Lutaml::Xml::Leptris
- Defined in:
- lib/lutaml/xml/leptris.rb,
lib/lutaml/xml/leptris/plan_walk.rb,
lib/lutaml/xml/leptris/plan_order.rb,
lib/lutaml/xml/leptris/plan_compiler.rb,
lib/lutaml/xml/leptris/plan_hydrator.rb,
lib/lutaml/xml/leptris/plan_serializer.rb
Overview
The leptris plan fast path: model mapping to libleptris descriptor plan, native walk, direct hydration. Everything under this namespace is bound to the leptris gem; nothing above it may reference leptris types directly (the moxml adapters and the interpretive path never enter here).
Defined Under Namespace
Modules: PlanCompiler, PlanHydrator, PlanOrder, PlanSerializer, PlanWalk
Constant Summary collapse
- MIN_LEPTRIS_VERSION =
The plan path requires the one-crossing child snapshot (leptris_plan_value_children_snapshot with child handles, PlanValue#children_snapshot), which shipped in leptris 1.9.273.0. Bundles resolving an older gem keep the interpretive path — PlanCompiler.compile answers nil — the existing opt-out protocol.
"1.9.273.0"
Class Method Summary collapse
Class Method Details
.plan_path_compatible? ⇒ Boolean
19 20 21 22 23 24 |
# File 'lib/lutaml/xml/leptris.rb', line 19 def self.plan_path_compatible? return false unless defined?(Gem) spec = Gem.loaded_specs["leptris"] spec && spec.version >= Gem::Version.new(MIN_LEPTRIS_VERSION) end |