Skip to main content

LegalReference

Enum LegalReference 

Source
pub enum LegalReference {
    StromNev {
        paragraph: &'static str,
    },
    GasNev {
        paragraph: &'static str,
    },
    Kav {
        paragraph: &'static str,
    },
    Sect14aEnwg {
        module: u8,
    },
    MessZv {
        paragraph: &'static str,
    },
    MsbG {
        paragraph: &'static str,
    },
    BnetzaDecision {
        reference: &'static str,
    },
    BdewAhb {
        reference: &'static str,
    },
    StromNzv {
        paragraph: &'static str,
    },
    GasNzv {
        paragraph: &'static str,
    },
    Enwg {
        paragraph: &'static str,
    },
    ARegV {
        paragraph: &'static str,
    },
}
Expand description

Regulatory citation that justifies a billing position or rate.

Every InvoicePosition should carry at least one LegalReference. This enables full auditability: any operator or regulator can trace exactly which paragraph, ruling, and version authorised each charge.

Variants§

§

StromNev

StromNEV — Stromnetzentgeltverordnung (grid usage charges, Strom).

Example: StromNev { paragraph: "§17" } for Leistungspreise.

Fields

§paragraph: &'static str

Paragraph reference, e.g. "§17", "§21".

§

GasNev

GasNEV — Gasnetzentgeltverordnung (grid usage charges, Gas).

Fields

§paragraph: &'static str

Paragraph reference, e.g. "§14".

§

Kav

KAV — Konzessionsabgabenverordnung (municipal concession fee).

Example: Kav { paragraph: "§2 Abs. 2" }.

Fields

§paragraph: &'static str

Paragraph reference, e.g. "§2 Abs. 2".

§

Sect14aEnwg

§14a EnWG — Steuerbare Verbrauchseinrichtungen (controllable loads).

Governs time-variable (ToU) NNE for heat pumps, EV chargers, etc.

Fields

§module: u8

Module: 1, 2, or 3.

§

MessZv

MessZV — Messzugangsverordnung (metering access).

Fields

§paragraph: &'static str

Paragraph citation, e.g. "§2", "§17".

§

MsbG

MsbG — Messstellenbetriebsgesetz (metering point operation).

Fields

§paragraph: &'static str

Paragraph citation, e.g. "§§6–7".

§

BnetzaDecision

BNetzA decision (Beschluss).

Example: BnetzaDecision { reference: "BK6-22-300" }.

Fields

§reference: &'static str

Decision reference, e.g. "BK6-22-300", "BK6-24-174".

§

BdewAhb

BDEW application handbook (Anwendungshandbuch).

Fields

§reference: &'static str

AHB reference, e.g. "GPKE BK6-22-024".

§

StromNzv

StromNZV — Stromnetzzugangsverordnung (grid access, Strom).

Fields

§paragraph: &'static str

Paragraph citation, e.g. "§15".

§

GasNzv

GasNZV — Gasnetzzugangsverordnung (grid access, Gas).

Fields

§paragraph: &'static str

Paragraph citation, e.g. "§15".

§

Enwg

EnWG — Energiewirtschaftsgesetz (general energy law).

Fields

§paragraph: &'static str

Paragraph citation, e.g. "§14a".

§

ARegV

ARegV — Anreizregulierungsverordnung (incentive regulation).

ARegV §§17–21 define the allowed NNE revenue caps and efficiency targets. Relevant when documenting why a specific regulated tariff level was approved.

Fields

§paragraph: &'static str

Paragraph citation, e.g. "§17", "§21".

Implementations§

Source§

impl LegalReference

Source

pub fn citation(&self) -> String

Short human-readable citation string (German).

Trait Implementations§

Source§

impl Clone for LegalReference

Source§

fn clone(&self) -> LegalReference

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for LegalReference

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for LegalReference

Source§

impl PartialEq for LegalReference

Source§

fn eq(&self, other: &LegalReference) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for LegalReference

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.