Class: CurpGenerator::Name

Inherits:
Base
  • Object
show all
Defined in:
lib/curp_generator/name.rb

Constant Summary

Constants inherited from Base

Base::InvalidCurpArgumentError

Constants included from Catalogs

Catalogs::COMMON_NAMES, Catalogs::COMPOSED_NAMES, Catalogs::FORBIDDEN_WORDS, Catalogs::STATES

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(first_name, second_name, first_last_name, second_last_name) ⇒ Name

Returns a new instance of Name.



4
5
6
7
8
9
# File 'lib/curp_generator/name.rb', line 4

def initialize(first_name, second_name, first_last_name, second_last_name)
  @first_name       = parse_attribute(first_name&.upcase)
  @second_name      = parse_attribute(second_name&.upcase)
  @first_last_name  = parse_attribute(first_last_name&.upcase)
  @second_last_name = parse_attribute(second_last_name&.upcase)
end

Class Method Details

.prefix_name(first_name, second_name, first_last_name, second_last_name) ⇒ Object



11
12
13
# File 'lib/curp_generator/name.rb', line 11

def self.prefix_name(first_name, second_name, first_last_name, second_last_name)
  new(first_name, second_name, first_last_name, second_last_name).prefix_name
end

.sufix_name(first_name, second_name, first_last_name, second_last_name) ⇒ Object



15
16
17
# File 'lib/curp_generator/name.rb', line 15

def self.sufix_name(first_name, second_name, first_last_name, second_last_name)
  new(first_name, second_name, first_last_name, second_last_name).sufix_name
end

Instance Method Details

#generateObject



19
20
21
# File 'lib/curp_generator/name.rb', line 19

def generate
  validate_params
end

#prefix_nameObject



23
24
25
26
# File 'lib/curp_generator/name.rb', line 23

def prefix_name
  generate
  FORBIDDEN_WORDS[prefix_consonants] || prefix_consonants
end

#sufix_nameObject



28
29
30
31
# File 'lib/curp_generator/name.rb', line 28

def sufix_name
  generate
  sufix_consonants
end