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