Compare commits

..

No commits in common. "2176f5dd8949232bc44cd5fa09a75394832cc055" and "93067b3010c0c724204e177825c0e9822a94345a" have entirely different histories.

3 changed files with 11 additions and 23 deletions

View file

@ -19,17 +19,17 @@ use nom::{
#[cfg(debug_assertions)]
use serde::Serialize;
use serde::{
de::{self as serde_de, Visitor},
de::{self, Visitor},
Deserialize,
};
use strum::EnumDiscriminants;
use thiserror::Error;
use utils::{inflate, InflateError};
mod de;
mod lex;
mod ser;
mod utils;
pub use de::*;
pub use ser::*;
use super::Expression as Instruction;

View file

@ -40,7 +40,11 @@ impl Parse for Modifier {
pub fn flat_atom_parser(notes: &str) -> impl Parser<&str, FlatAtom, nom::error::Error<&str>> {
alt((
map_res(map_opt(one_of(notes), |c| notes.find(c)), u8::try_from).map(FlatAtom::Note),
map_res(
map_opt(one_of(notes), |c| notes.find(dbg!(c))),
u8::try_from,
)
.map(FlatAtom::Note),
value(FlatAtom::Rest, char(Atom::REST)),
value(FlatAtom::StartHere, char(Atom::START_HERE)),
preceded(char(Atom::MODIFIER), Modifier::parse).map(FlatAtom::Modifier),

View file

@ -1,23 +1,7 @@
use derive_new::new;
use nom::{
character::complete::one_of,
combinator::all_consuming,
multi::many0,
sequence::{preceded, terminated},
Parser,
};
use serde::{
de::{self, Deserializer, Visitor},
Deserialize,
};
use thiserror::Error;
use de::Deserializer;
use nom::Parser;
use crate::bng::score::lex::lexer::flat_atom_parser;
use super::{
utils::{inflate, InflateError},
Atoms, FlatAtom,
};
use super::*;
#[derive(Debug, Error)]
enum AtomsSerializeError {