#![allow(clippy::wildcard_imports, clippy::enum_glob_use)]
#![allow(
clippy::cast_precision_loss,
clippy::cast_possible_truncation,
clippy::cast_sign_loss
)]
use super::*;
impl Cyclomatic for GoCode {
fn compute<'a>(node: &Node<'a>, _code: &'a [u8], stats: &mut Stats) {
use Go as G;
match node.kind_id().into() {
G::ExpressionCase | G::TypeCase | G::CommunicationCase => {
stats.cyclomatic += 1.;
}
G::ExpressionSwitchStatement | G::TypeSwitchStatement | G::SelectStatement => {
stats.cyclomatic_modified += 1.;
}
G::IfStatement | G::ForStatement | G::AMPAMP | G::PIPEPIPE => {
stats.cyclomatic += 1.;
stats.cyclomatic_modified += 1.;
}
_ => {}
}
}
}