change visibility of and rename Signal to SignalEnum

This commit is contained in:
Yehowshua Immanuel 2022-10-25 21:32:22 -04:00
parent 6abcd7ce32
commit 746c25b1ba
4 changed files with 67 additions and 67 deletions

View file

@ -30,7 +30,7 @@ pub(super) enum TimelineQueryResults {
#[derive(Debug)]
pub enum Signal {
pub(super) enum SignalEnum {
Data {
name: String,
sig_type: SigType,
@ -100,18 +100,18 @@ type TimeStamp = BigUint;
type SignalValNum = BigUint;
// getter functions
impl Signal {
impl SignalEnum {
pub fn name(&self) -> String {
match self {
Signal::Data { name, ..} => name,
Signal::Alias { name, .. } => name
SignalEnum::Data { name, ..} => name,
SignalEnum::Alias { name, .. } => name
}.clone()
}
}
// helper functions ultimately used by Signal's query functions later on
impl Signal {
impl SignalEnum {
/// Computes the bytes required to store a signal's numerical value
/// using the num_bits which another function would provide from
/// the num_bits field of the Signal::Data variant.
@ -144,7 +144,7 @@ impl Signal {
lsb_indxs_of_string_tmstmp_vals_on_tmln,
byte_len_of_string_tmstmp_vals_on_tmln,
) = match self {
Signal::Data {
SignalEnum::Data {
string_vals,
lsb_indxs_of_string_tmstmp_vals_on_tmln,
byte_len_of_string_tmstmp_vals_on_tmln,
@ -154,7 +154,7 @@ impl Signal {
lsb_indxs_of_string_tmstmp_vals_on_tmln,
byte_len_of_string_tmstmp_vals_on_tmln,
)),
Signal::Alias { .. } => Err(SignalErrors::PointsToAlias),
SignalEnum::Alias { .. } => Err(SignalErrors::PointsToAlias),
}?;
// get index
@ -193,7 +193,7 @@ impl Signal {
lsb_indxs_of_num_tmstmp_vals_on_tmln,
byte_len_of_num_tmstmp_vals_on_tmln,
) = match self {
Signal::Data {
SignalEnum::Data {
num_bytes,
nums_encoded_as_fixed_width_le_u8,
lsb_indxs_of_num_tmstmp_vals_on_tmln,
@ -205,7 +205,7 @@ impl Signal {
lsb_indxs_of_num_tmstmp_vals_on_tmln,
byte_len_of_num_tmstmp_vals_on_tmln,
)),
Signal::Alias { .. } => Err(SignalErrors::PointsToAlias),
SignalEnum::Alias { .. } => Err(SignalErrors::PointsToAlias),
}?;
// get index
@ -234,12 +234,12 @@ impl Signal {
// Function that take in a desired time on the timeline for a
// specific signal and return a numerical or string value in a Result,
// or an error in a Result.
impl Signal {
impl SignalEnum {
pub fn query_string_val_on_tmln(
&self,
desired_time: &BigUint,
tmstmps_encoded_as_u8s: &Vec<u8>,
all_signals: &Vec<Signal>,
all_signals: &Vec<SignalEnum>,
) -> Result<String, SignalErrors> {
let signal_idx = match self {
Self::Data { self_idx, .. } => {
@ -263,7 +263,7 @@ impl Signal {
// else we propagate Err(..).
let (string_vals, lsb_indxs_of_string_tmstmp_vals_on_tmln) =
match &all_signals[signal_idx] {
Signal::Data {
SignalEnum::Data {
ref string_vals,
ref lsb_indxs_of_string_tmstmp_vals_on_tmln,
..
@ -273,7 +273,7 @@ impl Signal {
lsb_indxs_of_string_tmstmp_vals_on_tmln,
))
}
Signal::Alias { .. } => Err(SignalErrors::PointsToAlias),
SignalEnum::Alias { .. } => Err(SignalErrors::PointsToAlias),
}?;
// this signal should at least have some events, otherwise, trying to index into
// an empty vector later on would fail
@ -354,7 +354,7 @@ impl Signal {
&self,
desired_time: &BigUint,
tmstmps_encoded_as_u8s: &Vec<u8>,
all_signals: &Vec<Signal>,
all_signals: &Vec<SignalEnum>,
) -> Result<BigUint, SignalErrors> {
let signal_idx = match self {
Self::Data { self_idx, .. } => {
@ -379,7 +379,7 @@ impl Signal {
// else we propagate Err(..).
let (nums_encoded_as_fixed_width_le_u8, lsb_indxs_of_num_tmstmp_vals_on_tmln, num_bytes) =
match &all_signals[signal_idx] {
Signal::Data {
SignalEnum::Data {
num_bytes,
ref nums_encoded_as_fixed_width_le_u8,
ref lsb_indxs_of_num_tmstmp_vals_on_tmln,
@ -394,7 +394,7 @@ impl Signal {
num_bytes,
))
}
Signal::Alias { .. } => Err(SignalErrors::PointsToAlias),
SignalEnum::Alias { .. } => Err(SignalErrors::PointsToAlias),
}?;
// this signal should at least have some events, otherwise, trying to index into
// an empty vector later on would fail