Skip to content

Commit

Permalink
canonicalize use statements
Browse files Browse the repository at this point in the history
  • Loading branch information
jan-ferdinand committed Jan 15, 2024
1 parent 5d9b2cd commit 0068a6f
Show file tree
Hide file tree
Showing 127 changed files with 1,347 additions and 955 deletions.
23 changes: 13 additions & 10 deletions src/ast.rs
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
use itertools::Itertools;
use std::fmt::Display;
use triton_vm::{instruction::LabelledInstruction, Digest};
use twenty_first::shared_math::b_field_element::BFieldElement;
use twenty_first::shared_math::bfield_codec::BFieldCodec;
use twenty_first::shared_math::x_field_element::XFieldElement;

use crate::{
ast_types::{self, AbstractArgument, DataType, FieldId},
type_checker::Typing,
};

use itertools::Itertools;
use triton_vm::instruction::LabelledInstruction;
use triton_vm::twenty_first::shared_math::bfield_codec::BFieldCodec;
use triton_vm::twenty_first::shared_math::x_field_element::XFieldElement;
use triton_vm::BFieldElement;
use triton_vm::Digest;

use crate::ast_types;
use crate::ast_types::AbstractArgument;
use crate::ast_types::DataType;
use crate::ast_types::FieldId;
use crate::type_checker::Typing;

#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub(crate) enum RoutineBody<T> {
Expand Down
25 changes: 14 additions & 11 deletions src/ast_types.rs
Original file line number Diff line number Diff line change
@@ -1,16 +1,10 @@
pub mod abstract_argument;
pub mod array_type;
pub mod custom_type_oil;
pub mod enum_type;
pub mod field_id;
pub mod function_type;
pub mod list_type;
pub mod struct_type;
pub mod tuple;
use std::fmt::Display;
use std::str::FromStr;

use anyhow::bail;
use itertools::Itertools;
use std::{fmt::Display, str::FromStr};

use crate::ast::FnSignature;

pub use self::abstract_argument::*;
pub use self::array_type::ArrayType;
Expand All @@ -21,7 +15,16 @@ pub use self::function_type::FunctionType;
pub use self::list_type::ListType;
pub use self::struct_type::*;
pub use self::tuple::Tuple;
use crate::ast::FnSignature;

pub mod abstract_argument;
pub mod array_type;
pub mod custom_type_oil;
pub mod enum_type;
pub mod field_id;
pub mod function_type;
pub mod list_type;
pub mod struct_type;
pub mod tuple;

#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub enum DataType {
Expand Down
3 changes: 2 additions & 1 deletion src/ast_types/abstract_argument.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
use std::fmt::Display;

use super::{DataType, FunctionType};
use super::DataType;
use super::FunctionType;

#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub enum AbstractArgument {
Expand Down
4 changes: 3 additions & 1 deletion src/ast_types/custom_type_oil.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
use anyhow::bail;

use super::{DataType, EnumType, StructType};
use super::DataType;
use super::EnumType;
use super::StructType;

/// Helper-type used during parsing to handle all
/// custom-types.
Expand Down
8 changes: 6 additions & 2 deletions src/ast_types/struct_type.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
use itertools::Itertools;
use std::fmt::Display;

use super::{DataType, FieldId, Tuple};
use itertools::Itertools;

use crate::libraries::LibraryFunction;

use super::DataType;
use super::FieldId;
use super::Tuple;

#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub struct NamedFieldsStruct {
pub name: String,
Expand Down
7 changes: 5 additions & 2 deletions src/ast_types/tuple.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
use itertools::Itertools;
use triton_vm::triton_asm;

use crate::{ast::FnSignature, libraries::LibraryFunction};
use crate::ast::FnSignature;
use crate::libraries::LibraryFunction;

use super::{AbstractArgument, AbstractValueArg, DataType};
use super::AbstractArgument;
use super::AbstractValueArg;
use super::DataType;

#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub struct Tuple {
Expand Down
17 changes: 10 additions & 7 deletions src/composite_types.rs
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
use std::collections::HashMap;

use itertools::Itertools;
use num::One;
use triton_vm::instruction::LabelledInstruction;

use crate::{
ast,
ast_types::{self, CustomTypeOil, EnumType},
custom_type_resolver::CustomTypeResolution,
type_checker::{self, GetType, Typing},
};
use std::collections::HashMap;
use crate::ast;
use crate::ast_types;
use crate::ast_types::CustomTypeOil;
use crate::ast_types::EnumType;
use crate::custom_type_resolver::CustomTypeResolution;
use crate::type_checker;
use crate::type_checker::GetType;
use crate::type_checker::Typing;

/// A type definition, its methods, and its association functions
#[derive(Debug, Clone)]
Expand Down
15 changes: 9 additions & 6 deletions src/custom_type_resolver.rs
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
use crate::{
ast::*,
ast_types::{self, AbstractArgument, AbstractValueArg, CustomTypeOil, DataType, Tuple},
composite_types::CompositeTypes,
type_checker::Typing,
};
use crate::ast::*;
use crate::ast_types;
use crate::ast_types::AbstractArgument;
use crate::ast_types::AbstractValueArg;
use crate::ast_types::CustomTypeOil;
use crate::ast_types::DataType;
use crate::ast_types::Tuple;
use crate::composite_types::CompositeTypes;
use crate::type_checker::Typing;

pub(crate) trait CustomTypeResolution {
fn resolve_custom_types(&mut self, composite_types: &CompositeTypes);
Expand Down
12 changes: 8 additions & 4 deletions src/graft.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
use itertools::Itertools;
use num::{One, Zero};
use std::collections::HashMap;
use std::str::FromStr;
use syn::{parse_quote, PathArguments};

use itertools::Itertools;
use num::One;
use num::Zero;
use syn::parse_quote;
use syn::PathArguments;

use crate::ast;
use crate::ast::ReturningBlock;
Expand Down Expand Up @@ -1455,9 +1458,10 @@ pub fn item_fn(item: syn::Item) -> syn::ItemFn {

#[cfg(test)]
mod tests {
use super::*;
use syn::parse_quote;

use super::*;

#[test]
fn big_mmr_function() {
let tokens: syn::Item = parse_quote! {
Expand Down
15 changes: 8 additions & 7 deletions src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
use std::{collections::HashMap, fs};
use std::collections::HashMap;
use std::fs;

use ast_types::ListType;
use graft::CustomTypeRust;
use itertools::Itertools;
use triton_vm::instruction::LabelledInstruction;

use crate::{
custom_type_resolver::resolve_custom_types, tasm_code_generator::compile_function,
type_checker::annotate_fn_outer,
};
use ast_types::ListType;
use graft::CustomTypeRust;

use crate::custom_type_resolver::resolve_custom_types;
use crate::tasm_code_generator::compile_function;
use crate::type_checker::annotate_fn_outer;

pub mod ast;
pub mod ast_types;
Expand Down
15 changes: 8 additions & 7 deletions src/libraries.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
use crate::{
ast::{self, FnSignature},
ast_types::{self, ListType},
graft::Graft,
tasm_code_generator::CompilerState,
type_checker,
};
use std::fmt::Debug;

use crate::ast;
use crate::ast::FnSignature;
use crate::ast_types;
use crate::ast_types::ListType;
use crate::graft::Graft;
use crate::tasm_code_generator::CompilerState;
use crate::type_checker;

pub mod bfe;
pub mod bfield_codec;
pub mod boxed;
Expand Down
14 changes: 10 additions & 4 deletions src/libraries/bfe.rs
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
use itertools::Itertools;
use num::{One, Zero};
use num::One;
use num::Zero;
use triton_vm::triton_asm;
use twenty_first::shared_math::{b_field_element::BFieldElement, traits::PrimitiveRootOfUnity};
use triton_vm::twenty_first::shared_math::traits::PrimitiveRootOfUnity;
use triton_vm::BFieldElement;

use crate::ast;
use crate::ast_types;
use crate::graft::Graft;
use crate::subroutine::SubRoutine;
use crate::{ast, ast_types, graft::Graft};

use super::{tasm_lib_snippet_to_fn_signature, Library, LibraryFunction};
use super::tasm_lib_snippet_to_fn_signature;
use super::Library;
use super::LibraryFunction;

const BFE_STRUCT_NAME: &str = "BFieldElement";
const FUNCTION_NAME_NEW_BFE: &str = "BFieldElement::new";
Expand Down
11 changes: 5 additions & 6 deletions src/libraries/bfield_codec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,12 @@ use tasm_lib::memory::dyn_malloc;
use triton_vm::instruction::LabelledInstruction;
use triton_vm::triton_asm;

use crate::ast;
use crate::ast_types;
use crate::ast_types::DataType;
use crate::tasm_code_generator::{write_n_words_to_memory_leaving_address, CompilerState};
use crate::{
ast::{self},
ast_types,
graft::Graft,
};
use crate::graft::Graft;
use crate::tasm_code_generator::write_n_words_to_memory_leaving_address;
use crate::tasm_code_generator::CompilerState;

use super::Library;

Expand Down
12 changes: 8 additions & 4 deletions src/libraries/boxed.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
use super::Library;
use num::One;
use triton_vm::instruction::LabelledInstruction;
use triton_vm::triton_asm;

use crate::ast;
use crate::ast_types;
use crate::graft::Graft;
use crate::subroutine::SubRoutine;
use crate::tasm_code_generator::write_n_words_to_memory_leaving_address;
use crate::{ast, ast_types};
use num::One;
use triton_vm::{instruction::LabelledInstruction, triton_asm};

use super::Library;

#[derive(Debug)]
pub struct Boxed;
Expand Down
6 changes: 4 additions & 2 deletions src/libraries/core.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@ use syn::token::Comma;
use syn::ExprMethodCall;
use triton_vm::instruction::LabelledInstruction;

use crate::ast::{Expr, FnSignature};
use crate::ast::Expr;
use crate::ast::FnSignature;
use crate::ast_types::DataType;
use crate::graft::Graft;
use crate::libraries::{Annotation, Library};
use crate::libraries::Annotation;
use crate::libraries::Library;
use crate::tasm_code_generator::CompilerState;
use crate::type_checker::CheckState;

Expand Down
7 changes: 5 additions & 2 deletions src/libraries/core/option_type.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
use triton_vm::triton_asm;

use crate::ast::{self, FnSignature};
use crate::ast;
use crate::ast::FnSignature;
use crate::ast_types;
use crate::ast_types::AbstractArgument;
use crate::ast_types::AbstractValueArg;
use crate::ast_types::DataType;
use crate::ast_types::{self, AbstractArgument, AbstractValueArg};
use crate::type_checker::Typing;

pub(crate) fn option_type(payload_type: DataType) -> crate::composite_types::TypeContext {
Expand Down
7 changes: 5 additions & 2 deletions src/libraries/core/result_type.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
use triton_vm::triton_asm;

use crate::ast::{self, FnSignature};
use crate::ast;
use crate::ast::FnSignature;
use crate::ast_types;
use crate::ast_types::AbstractArgument;
use crate::ast_types::AbstractValueArg;
use crate::ast_types::DataType;
use crate::ast_types::{self, AbstractArgument, AbstractValueArg};
use crate::type_checker::Typing;

pub(crate) fn result_type(ok_type: DataType) -> crate::composite_types::TypeContext {
Expand Down
19 changes: 12 additions & 7 deletions src/libraries/hasher.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,18 @@
use tasm_lib::Digest;
use triton_vm::{instruction::LabelledInstruction, triton_asm, BFieldElement};
use twenty_first::shared_math::tip5::DIGEST_LENGTH;

use triton_vm::instruction::LabelledInstruction;
use triton_vm::triton_asm;
use triton_vm::twenty_first::shared_math::tip5::DIGEST_LENGTH;
use triton_vm::BFieldElement;

use crate::ast;
use crate::ast_types;
use crate::graft::Graft;
use crate::libraries::bfe::BfeLibrary;
use crate::subroutine::SubRoutine;
use crate::{
ast, ast_types, graft::Graft, libraries::bfe::BfeLibrary, tasm_code_generator::CompilerState,
};
use crate::tasm_code_generator::CompilerState;

use super::{Library, LibraryFunction};
use super::Library;
use super::LibraryFunction;

const HASHER_LIB_INDICATOR: &str = "H::";
const HASH_PAIR_FUNCTION_NAME: &str = "H::hash_pair";
Expand Down
5 changes: 3 additions & 2 deletions src/libraries/tasm.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
use triton_vm::triton_asm;

use crate::ast::{self};
use crate::ast;
use crate::ast_types;
use crate::graft::Graft;
use crate::tasm_code_generator::CompilerState;

use super::{tasm_lib_snippet_to_fn_signature, Library};
use super::tasm_lib_snippet_to_fn_signature;
use super::Library;

const TASM_LIB_INDICATOR: &str = "tasm::";

Expand Down
13 changes: 8 additions & 5 deletions src/libraries/unsigned_integers.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
use tasm_lib::traits::basic_snippet::BasicSnippet;
use triton_vm::triton_asm;

use super::{Library, LibraryFunction};
use crate::{
ast, ast_types, graft::Graft, tasm_code_generator::CompilerState,
type_checker::is_u32_based_type,
};
use crate::ast;
use crate::ast_types;
use crate::graft::Graft;
use crate::tasm_code_generator::CompilerState;
use crate::type_checker::is_u32_based_type;

use super::Library;
use super::LibraryFunction;

#[derive(Clone, Debug)]
pub struct UnsignedIntegersLib {
Expand Down
Loading

0 comments on commit 0068a6f

Please sign in to comment.