Learn R Programming

ids (version 1.0.1)

adjective_animal: Ids based on a number of adjectives and an animal

Description

Ids based on a number of adjectives and an animal

Usage

adjective_animal(n = 1, n_adjectives = 1, style = "snake",
  max_len = Inf)

Arguments

n

number of ids to return. If NULL, it instead returns the generating function

n_adjectives

Number of adjectives to prefix the anmial with

style

Style to join words with. Can be one of "Pascal", "camel", "snake", "kebab", "dot", "title", "sentence", "lower", "upper", and "constant".

max_len

The maximum length of a word part to include (this may be useful because some of the names are rather long. This stops you generating a hexakosioihexekontahexaphobic_queenalexandrasbirdwingbutterfly). A vector of length 2 can be passed in here in which case the first element will apply to the adjectives (all of them) and the second element will apply to the animals.

Details

The list of adjectives and animals comes from https://github.com/a-type/adjective-adjective-animal, and in turn from gfycat.com

Examples

Run this code
# Generate a random identifier:
adjective_animal()

# Generate a bunch all at once:
adjective_animal(5)

# Control the style of punctuation with the style argument:
adjective_animal(style = "lower")
adjective_animal(style = "CONSTANT")
adjective_animal(style = "camel")
adjective_animal(style = "kebab")

# Control the number of adjectives used
adjective_animal(n_adjectives = 3)

# This can get out of hand quickly though:
adjective_animal(n_adjectives = 7)

# Limit the length of adjectives and animals used:
adjective_animal(10, max_len = 6)

# The lengths can be controlled for adjectives and animals
# separately, with Inf meaning no limit:
adjective_animal(10, max_len = c(6, Inf), n_adjectives = 2)

# Pass n = NULL to bind arguments to a function
id <- adjective_animal(NULL, n_adjectives = 2, style = "dot", max_len = 6)
id()
id(10)

Run the code above in your browser using DataLab