pub fn score(&self) -> Score {
        let exploitability = self.exploitability().value();
        let iss = self.impact().value();

        let iss_scoped = if !self.is_scope_changed() {
            6.42 * iss
        } else {
            (7.52 * (iss - 0.029)) - (3.25 * (iss - 0.02).powf(15.0))
        };

        let score = if iss_scoped <= 0.0 {
            0.0
        } else if !self.is_scope_changed() {
            (iss_scoped + exploitability).min(10.0)
        } else {
            (1.08 * (iss_scoped + exploitability)).min(10.0)
        };

        Score::new(score).roundup()
    }
/// Calculate Base CVSS score: overall value for determining the severity
/// of a vulnerability, generally referred to as the "CVSS score".
///
/// Described in CVSS v3.1 Specification: Section 2:
/// <https://www.first.org/cvss/specification-document#t6>
///
/// > When the Base metrics are assigned values by an analyst, the Base
/// > equation computes a score ranging from 0.0 to 10.0.
/// >
/// > Specifically, the Base equation is derived from two sub equations:
/// > the Exploitability sub-score equation, and the Impact sub-score
/// > equation. The Exploitability sub-score equation is derived from the
/// > Base Exploitability metrics, while the Impact sub-score equation is
/// > derived from the Base Impact metrics.
Calculate Base CVSS score: overall value for determining the severity
of a vulnerability, generally referred to as the "CVSS score".

Described in CVSS v3.1 Specification: Section 2.

> When the Base metrics are assigned values by an analyst, the Base
> equation computes a score ranging from 0.0 to 10.0.
>
> Specifically, the Base equation is derived from two sub equations:
> the Exploitability sub-score equation, and the Impact sub-score
> equation. The Exploitability sub-score equation is derived from the
> Base Exploitability metrics, while the Impact sub-score equation is
> derived from the Base Impact metrics.
Calculate Base CVSS score : overall value for determining the severity of a vulnerability generally referred to as the " CVSS score " . Described in CVSS v3 . 1 Specification : Section 2 . > When the Base metrics are assigned values by an analyst the Base > equation computes a score ranging from 0 . 0 to 10 . 0 . > > Specifically the Base equation is derived from two sub equations : > the Exploitability sub - score equation and the Impact sub - score > equation . The Exploitability sub - score equation is derived from the > Base Exploitability metrics while the Impact sub - score equation is > derived from the Base Impact metrics .
pub fn score(&self) -> Score {
        let exploitability = self.exploitability().value();
        let iss = self.impact().value();
        let iss_scoped = if !self.is_scope_changed() {
            6.42 * iss
        } else {
            (7.52 * (iss - 0.029)) - (3.25 * (iss - 0.02).powf(15.0))
        };
        let score = if iss_scoped <= 0.0 {
            0.0
        } else if !self.is_scope_changed() {
            (iss_scoped + exploitability).min(10.0)
        } else {
            (1.08 * (iss_scoped + exploitability)).min(10.0)
        };
        Score::new(score).roundup()
    }
pub fn score ( & self ) -> Score { let exploitability = self . exploitability ( ) . value ( ) ; let iss = self . impact ( ) . value ( ) ; let iss_scoped = if ! self . is_scope_changed ( ) { 6.42 * iss } else { ( 7.52 * ( iss - 0.029 ) ) - ( 3.25 * ( iss - 0.02 ) . powf ( 15.0 ) ) } ; let score = if iss_scoped <= 0.0 { 0.0 } else if ! self . is_scope_changed ( ) { ( iss_scoped + exploitability ) . min ( 10.0 ) } else { ( 1.08 * ( iss_scoped + exploitability ) ) . min ( 10.0 ) } ; Score :: new ( score ) . roundup ( ) }
Calculate Base CVSS score: overall value for determining the severity
of a vulnerability, generally referred to as the "CVSS score".
Calculate Base CVSS score : overall value for determining the severity of a vulnerability generally referred to as the " CVSS score " .
&self
&self