Fork of daniellemaywood.uk/gleam — Wasm codegen work
2.6 kB
112 lines
1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: 2021 The Gleam contributors
3
4#![warn(
5 clippy::all,
6 clippy::redundant_clone,
7 clippy::dbg_macro,
8 clippy::todo,
9 clippy::mem_forget,
10 // TODO: enable once the false positive bug is solved
11 // clippy::use_self,
12 clippy::filter_map_next,
13 clippy::needless_continue,
14 clippy::needless_borrow,
15 clippy::match_wildcard_for_single_variants,
16 clippy::imprecise_flops,
17 clippy::suboptimal_flops,
18 clippy::lossy_float_literal,
19 clippy::rest_pat_in_fully_bound_structs,
20 clippy::fn_params_excessive_bools,
21 clippy::inefficient_to_string,
22 clippy::linkedlist,
23 clippy::macro_use_imports,
24 clippy::option_option,
25 clippy::verbose_file_reads,
26 clippy::unnested_or_patterns,
27 clippy::default_trait_access,
28 clippy::format_push_string,
29 rust_2018_idioms,
30 missing_debug_implementations,
31 missing_copy_implementations,
32 trivial_casts,
33 trivial_numeric_casts,
34 nonstandard_style,
35 unexpected_cfgs,
36 unused_import_braces,
37 unused_qualifications,
38 clippy::wildcard_enum_match_arm
39)]
40#![deny(
41 clippy::await_holding_lock,
42 clippy::disallowed_methods,
43 clippy::if_let_mutex,
44 clippy::indexing_slicing,
45 clippy::mem_forget,
46 clippy::ok_expect,
47 clippy::unimplemented,
48 clippy::unwrap_used,
49 unsafe_code,
50 unstable_features,
51 unused_results
52)]
53#![allow(
54 clippy::assign_op_pattern,
55 clippy::to_string_trait_impl,
56 clippy::match_single_binding,
57 clippy::match_like_matches_macro,
58 clippy::inconsistent_struct_constructor,
59 clippy::len_without_is_empty,
60 clippy::let_unit_value,
61 // TODO: fix
62 clippy::arc_with_non_send_sync,
63)]
64
65#[cfg(test)]
66#[macro_use]
67extern crate pretty_assertions;
68
69pub mod analyse;
70pub mod ast;
71pub mod bit_array;
72pub mod build;
73pub mod codegen;
74pub mod config;
75pub mod dependency;
76pub mod diagnostic;
77pub mod docs;
78pub mod encryption;
79pub mod erlang;
80pub mod error;
81pub mod hex;
82pub mod io;
83pub mod javascript;
84pub mod line_numbers;
85pub mod manifest;
86pub mod metadata;
87pub mod package_interface;
88pub mod parse;
89pub mod paths;
90pub mod requirement;
91pub mod strings;
92pub mod type_;
93pub mod uid;
94pub mod version;
95pub mod warning;
96
97pub(crate) mod ast_folder;
98mod call_graph;
99mod dep_tree;
100pub(crate) mod derivation_tree;
101pub mod exhaustiveness;
102pub(crate) mod inline;
103pub mod reference;
104
105#[cfg(test)]
106mod tests;
107
108pub use error::{Error, Result};
109pub use warning::Warning;
110
111const GLEAM_CORE_PACKAGE_NAME: &str = "";
112pub const STDLIB_PACKAGE_NAME: &str = "gleam_stdlib";