Fork of daniellemaywood.uk/gleam — Wasm codegen work
2.6 kB
111 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 rust_2018_idioms,
29 missing_debug_implementations,
30 missing_copy_implementations,
31 trivial_casts,
32 trivial_numeric_casts,
33 nonstandard_style,
34 unexpected_cfgs,
35 unused_import_braces,
36 unused_qualifications,
37 clippy::wildcard_enum_match_arm
38)]
39#![deny(
40 clippy::await_holding_lock,
41 clippy::disallowed_methods,
42 clippy::if_let_mutex,
43 clippy::indexing_slicing,
44 clippy::mem_forget,
45 clippy::ok_expect,
46 clippy::unimplemented,
47 clippy::unwrap_used,
48 unsafe_code,
49 unstable_features,
50 unused_results
51)]
52#![allow(
53 clippy::assign_op_pattern,
54 clippy::to_string_trait_impl,
55 clippy::match_single_binding,
56 clippy::match_like_matches_macro,
57 clippy::inconsistent_struct_constructor,
58 clippy::len_without_is_empty,
59 clippy::let_unit_value,
60 // TODO: fix
61 clippy::arc_with_non_send_sync,
62)]
63
64#[cfg(test)]
65#[macro_use]
66extern crate pretty_assertions;
67
68pub mod analyse;
69pub mod ast;
70pub mod bit_array;
71pub mod build;
72pub mod codegen;
73pub mod config;
74pub mod dependency;
75pub mod diagnostic;
76pub mod docs;
77pub mod encryption;
78pub mod erlang;
79pub mod error;
80pub mod hex;
81pub mod io;
82pub mod javascript;
83pub mod line_numbers;
84pub mod manifest;
85pub mod metadata;
86pub mod package_interface;
87pub mod parse;
88pub mod paths;
89pub mod requirement;
90pub mod strings;
91pub mod type_;
92pub mod uid;
93pub mod version;
94pub mod warning;
95
96pub(crate) mod ast_folder;
97mod call_graph;
98mod dep_tree;
99pub(crate) mod derivation_tree;
100pub mod exhaustiveness;
101pub(crate) mod inline;
102pub mod reference;
103
104#[cfg(test)]
105mod tests;
106
107pub use error::{Error, Result};
108pub use warning::Warning;
109
110const GLEAM_CORE_PACKAGE_NAME: &str = "";
111pub const STDLIB_PACKAGE_NAME: &str = "gleam_stdlib";