|
ppforest2 v0.1.0
Projection Pursuit Decision Trees and Random Forests
|
Placeholder binarizer for specs that never reach binarization. More...
#include <Disabled.hpp>
Public Member Functions | |
| std::string | display_name () const override |
| Human-readable name for display in summaries. | |
| std::set< types::Mode > | supported_modes () const override |
| Training modes this strategy supports. | |
| nlohmann::json | to_json () const override |
| Serialize this strategy's configuration to JSON. | |
Public Member Functions inherited from ppforest2::binarize::Binarization | |
| void | regroup (NodeContext &ctx, stats::RNG &rng) const |
| Reduce a multiclass partition to binary and store in context. | |
Public Member Functions inherited from Strategy< Binarization > | |
| virtual | ~Strategy ()=default |
Static Public Member Functions | |
| static Binarization::Ptr | from_json (nlohmann::json const &j) |
Static Public Member Functions inherited from Strategy< Binarization > | |
| static Ptr | from_json (nlohmann::json const &j) |
| Construct a strategy from its JSON representation. | |
| static bool | register_strategy (std::string const &name, Factory factory) |
| Register a concrete strategy for JSON deserialization. | |
Protected Member Functions | |
| void | compute (NodeContext &ctx, stats::RNG &rng) const override |
Always raises an invariant — Disabled should never be reached at runtime. See class-level note. | |
Additional Inherited Members | |
Public Types inherited from Strategy< Binarization > | |
| using | Factory |
| Factory function type for deserializing a strategy from JSON. | |
| using | Ptr |
Placeholder binarizer for specs that never reach binarization.
Default for regression, where ByCutpoint grouping always produces a 2-group partition at each node — so the binary path in tree training never calls binarize. Disabled gives such specs a well-typed, mode-compatible binarizer without introducing a nullable binarize field.
Contract: regroup is never called in correct configurations. If it IS called (i.e. an upstream grouping strategy produced a >2-group partition while Disabled is configured), the call raises an invariant with a clear diagnostic rather than silently passing through. Catches the misconfiguration at the earliest point instead of letting it propagate to a downstream assertion.
|
overrideprotectedvirtual |
Always raises an invariant — Disabled should never be reached at runtime. See class-level note.
Implements ppforest2::binarize::Binarization.
|
inlineoverridevirtual |
Human-readable name for display in summaries.
Implements Strategy< Binarization >.
|
static |
|
inlineoverridevirtual |
Training modes this strategy supports.
Every concrete strategy MUST explicitly declare which modes it supports — there is no default. This forces implementers to think about mode compatibility rather than silently inheriting both modes and triggering runtime surprises.
Used by TrainingSpec to validate that every selected strategy is compatible with the configured training mode. Fails fast at build time instead of silently misbehaving at train time.
Implements Strategy< Binarization >.
|
overridevirtual |
Serialize this strategy's configuration to JSON.
Must include a "name" field identifying the strategy type, plus any strategy-specific parameters.
Implements Strategy< Binarization >.