class Faker::Hipster

def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 3)

Returns:
  • (String) -

Parameters:
  • random_sentences_to_add (Boolean) -- Specifies the number of random sentences to add
  • supplemental (Boolean) -- Specifies if the words are supplemental
  • sentence_count (Integer) -- Specifies the number of sentences in the paragraph
def paragraph(sentence_count: 3, supplemental: false, random_sentences_to_add: 3)
  sentences(number: resolve(sentence_count) + rand(random_sentences_to_add.to_i).to_i, supplemental: supplemental).join(' ')
end

def paragraph_by_chars(characters: 256, supplemental: false)

Returns:
  • (String) -

Parameters:
  • supplemental (Boolean) -- Specifies if the words are supplemental
  • characters (Integer) -- Specifies the number of characters in the paragraph
def paragraph_by_chars(characters: 256, supplemental: false)
  paragraph = paragraph(sentence_count: 3, supplemental: supplemental)
  paragraph += " #{paragraph(sentence_count: 3, supplemental: supplemental)}" while paragraph.length < characters
  "#{paragraph[0...characters - 1]}."
end

def paragraphs(number: 3, supplemental: false)

Returns:
  • (Array) -

Parameters:
  • supplemental (Boolean) -- Specifies if the words are supplemental
  • number (Integer) -- Specifies the number of paragraphs
def paragraphs(number: 3, supplemental: false)
  [].tap do |paragraphs|
    1.upto(resolve(number)) do
      paragraphs << paragraph(sentence_count: 3, supplemental: supplemental)
    end
  end
end

def sentence(word_count: 4, supplemental: false, random_words_to_add: 6, open_compounds_allowed: true)

Returns:
  • (String) -

Parameters:
  • open_compounds_allowed (Boolean) -- Specifies if the generated sentence can contain words having additional spaces
  • random_words_to_add (Integer) -- Specifies the number of random words to add
  • supplemental (Boolean) -- Specifies if the words are supplemental
  • word_count (Integer) -- Specifies the number of words in the sentence
def sentence(word_count: 4, supplemental: false, random_words_to_add: 6, open_compounds_allowed: true)
  "#{words(number: word_count + rand(random_words_to_add.to_i).to_i, supplemental: supplemental, spaces_allowed: open_compounds_allowed).join(' ').capitalize}."
end

def sentences(number: 3, supplemental: false)

Returns:
  • (Array) -

Parameters:
  • supplemental (Boolean) -- Specifies if the words are supplemental
  • number (Integer) -- Specifies the number of sentences returned
def sentences(number: 3, supplemental: false)
  [].tap do |sentences|
    1.upto(resolve(number)) do
      sentences << sentence(word_count: 3, supplemental: supplemental)
    end
  end
end

def word

Returns:
  • (String) -
def word
  random_word = sample(translate('faker.hipster.words'))
  random_word =~ /\s/ ? word : random_word
end

def words(number: 3, supplemental: false, spaces_allowed: false)

Returns:
  • (Array) -

Parameters:
  • spaces_allowed (Boolean) -- Specifies if the words may contain spaces
  • supplemental (Boolean) -- Specifies if the words are supplemental
  • number (Integer) -- Specifies the number of words returned
def words(number: 3, supplemental: false, spaces_allowed: false)
  resolved_num = resolve(number)
  word_list = (
    translate('faker.hipster.words') +
    (supplemental ? translate('faker.lorem.words') : [])
  )
  word_list *= ((resolved_num / word_list.length) + 1)
  return shuffle(word_list)[0, resolved_num] if spaces_allowed
  words = shuffle(word_list)[0, resolved_num]
  words.each_with_index { |w, i| words[i] = word if w =~ /\s/ }
end