DEV Community


Discussion on: Do you have a process for naming things?

zanehannanau profile image

Top-level constants (in a library or call function) would be uppercase as they are there to ensure capacity of use for the space they live in, and that . For instance, your create_deck( num_cards ) one would be better as a variable or simply a literal numeric value such as 52, 54, 128 or so on. Or it would be function called as a higher order function, eg

create_deck(Options { type: Cards::Playing, with_jokers: false, })

A better example would be

#[derive(Clone, Copy, PartialEq, Debug)]
pub enum ErrorCode {
  Other = 0,
  ServerDown = 1,
  BadRequest = 2,
  NotFound = 3,
  Gone = 4,
  EnhanceYourCalm = 5,
  DDoS = 6,


const ENUM_NAMES_ERROR_CODE: [&'static str; 7] = [

pub fn enum_name_error_code(e: ErrorCode) -> &'static str {
  let index: usize = e as usize;

where it's a constant; but it really is only used for one task and could be replaced with a match statement. This just avoids allocations in inlined code.