aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/analyzers/fractals.rs15
-rw-r--r--src/analyzers/raids/mod.rs4
-rw-r--r--src/analyzers/raids/w3.rs4
-rw-r--r--src/analyzers/raids/w4.rs16
-rw-r--r--src/analyzers/raids/w5.rs8
-rw-r--r--src/analyzers/raids/w6.rs12
-rw-r--r--src/analyzers/raids/w7.rs12
-rw-r--r--src/analyzers/strikes.rs8
8 files changed, 79 insertions, 0 deletions
diff --git a/src/analyzers/fractals.rs b/src/analyzers/fractals.rs
index e3ebfc5..910b182 100644
--- a/src/analyzers/fractals.rs
+++ b/src/analyzers/fractals.rs
@@ -4,6 +4,7 @@ use crate::{
Log,
};
+/// Health threshold for Skorvald to be detected as Challenge Mote.
pub const SKORVALD_CM_HEALTH: u64 = 5_551_340;
/// Analyzer for the first boss of 100 CM, Skorvald.
@@ -15,6 +16,10 @@ pub struct Skorvald<'log> {
}
impl<'log> Skorvald<'log> {
+ /// Create a new [`Skorvald`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Skorvald { log }
}
@@ -36,12 +41,19 @@ impl<'log> Analyzer for Skorvald<'log> {
}
}
+/// Analyzer for fractals that don't require special logic.
+///
+/// This is used for Artsariiv, Arkk, MAMA, Siax and Ensolyss.
#[derive(Debug, Clone, Copy)]
pub struct GenericFractal<'log> {
log: &'log Log,
}
impl<'log> GenericFractal<'log> {
+ /// Create a new [`GenericFractal`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
GenericFractal { log }
}
@@ -53,6 +65,9 @@ impl<'log> Analyzer for GenericFractal<'log> {
}
fn is_cm(&self) -> bool {
+ // Besides Skorvald normal mode, we only get logs for the challenge mote encounters (at
+ // least, only for those we'll use this analyzer). So we can safely return true here in any
+ // case.
true
}
diff --git a/src/analyzers/raids/mod.rs b/src/analyzers/raids/mod.rs
index 39fb823..bb3824b 100644
--- a/src/analyzers/raids/mod.rs
+++ b/src/analyzers/raids/mod.rs
@@ -36,6 +36,10 @@ pub struct GenericRaid<'log> {
}
impl<'log> GenericRaid<'log> {
+ /// Create a new [`GenericRaid`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
GenericRaid { log }
}
diff --git a/src/analyzers/raids/w3.rs b/src/analyzers/raids/w3.rs
index 82c007d..1b80b8d 100644
--- a/src/analyzers/raids/w3.rs
+++ b/src/analyzers/raids/w3.rs
@@ -10,6 +10,10 @@ pub struct Xera<'log> {
}
impl<'log> Xera<'log> {
+ /// Create a new [`Xera`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Xera { log }
}
diff --git a/src/analyzers/raids/w4.rs b/src/analyzers/raids/w4.rs
index e753e49..310b26f 100644
--- a/src/analyzers/raids/w4.rs
+++ b/src/analyzers/raids/w4.rs
@@ -16,6 +16,10 @@ pub struct Cairn<'log> {
}
impl<'log> Cairn<'log> {
+ /// Create a new [`Cairn`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Cairn { log }
}
@@ -46,6 +50,10 @@ pub struct MursaatOverseer<'log> {
}
impl<'log> MursaatOverseer<'log> {
+ /// Create a new [`MursaatOverseer`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
MursaatOverseer { log }
}
@@ -78,6 +86,10 @@ pub struct Samarog<'log> {
}
impl<'log> Samarog<'log> {
+ /// Create a new [`Samarog`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Samarog { log }
}
@@ -110,6 +122,10 @@ pub struct Deimos<'log> {
}
impl<'log> Deimos<'log> {
+ /// Create a new [`Deimos`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Deimos { log }
}
diff --git a/src/analyzers/raids/w5.rs b/src/analyzers/raids/w5.rs
index b9668b7..578cea8 100644
--- a/src/analyzers/raids/w5.rs
+++ b/src/analyzers/raids/w5.rs
@@ -18,6 +18,10 @@ pub struct SoullessHorror<'log> {
}
impl<'log> SoullessHorror<'log> {
+ /// Create a new [`SoullessHorror`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
SoullessHorror { log }
}
@@ -60,6 +64,10 @@ pub struct Dhuum<'log> {
}
impl<'log> Dhuum<'log> {
+ /// Create a new [`Dhuum`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Dhuum { log }
}
diff --git a/src/analyzers/raids/w6.rs b/src/analyzers/raids/w6.rs
index cc39403..8701a63 100644
--- a/src/analyzers/raids/w6.rs
+++ b/src/analyzers/raids/w6.rs
@@ -17,6 +17,10 @@ pub struct ConjuredAmalgamate<'log> {
}
impl<'log> ConjuredAmalgamate<'log> {
+ /// Create a new [`ConjuredAmalgamate`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
ConjuredAmalgamate { log }
}
@@ -60,6 +64,10 @@ pub struct LargosTwins<'log> {
}
impl<'log> LargosTwins<'log> {
+ /// Create a new [`LargosTwins`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
LargosTwins { log }
}
@@ -115,6 +123,10 @@ pub struct Qadim<'log> {
}
impl<'log> Qadim<'log> {
+ /// Create a new [`Qadim`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Qadim { log }
}
diff --git a/src/analyzers/raids/w7.rs b/src/analyzers/raids/w7.rs
index 480c303..bdfadd6 100644
--- a/src/analyzers/raids/w7.rs
+++ b/src/analyzers/raids/w7.rs
@@ -15,6 +15,10 @@ pub struct CardinalAdina<'log> {
}
impl<'log> CardinalAdina<'log> {
+ /// Create a new [`CardinalAdina`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
CardinalAdina { log }
}
@@ -47,6 +51,10 @@ pub struct CardinalSabir<'log> {
}
impl<'log> CardinalSabir<'log> {
+ /// Create a new [`CardinalSabir`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
CardinalSabir { log }
}
@@ -77,6 +85,10 @@ pub struct QadimThePeerless<'log> {
}
impl<'log> QadimThePeerless<'log> {
+ /// Create a new [`QadimThePeerless`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
QadimThePeerless { log }
}
diff --git a/src/analyzers/strikes.rs b/src/analyzers/strikes.rs
index 82fcd79..8c22c49 100644
--- a/src/analyzers/strikes.rs
+++ b/src/analyzers/strikes.rs
@@ -4,12 +4,20 @@ use crate::{
Log,
};
+/// Analyzer for strikes.
+///
+/// Since there are currently no strikes requiring special logic, this analyzer is used for all
+/// strike missions.
#[derive(Debug, Clone, Copy)]
pub struct GenericStrike<'log> {
log: &'log Log,
}
impl<'log> GenericStrike<'log> {
+ /// Create a new [`GenericStrike`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
GenericStrike { log }
}