Module: CpfCnpj

Included in:
Cnpj, Cpf
Defined in:
lib/flexa_lib/brcpfcnpj/cpf_cnpj.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#numeroObject (readonly)

Returns the value of attribute numero.



3
4
5
# File 'lib/flexa_lib/brcpfcnpj/cpf_cnpj.rb', line 3

def numero
  @numero
end

Instance Method Details

#==(outro_doc) ⇒ Object



17
18
19
# File 'lib/flexa_lib/brcpfcnpj/cpf_cnpj.rb', line 17

def ==(outro_doc)
  self.numero == outro_doc.numero
end

#initialize(numero) ⇒ Object



5
6
7
8
9
10
11
# File 'lib/flexa_lib/brcpfcnpj/cpf_cnpj.rb', line 5

def initialize(numero)
  @numero = numero
  @match = self.instance_of?(Cpf) ? @numero =~ CPF_REGEX : @numero =~ CNPJ_REGEX
  @numero_puro = $1
  @para_verificacao = $2
  @numero = (@match ? format_number! : nil)
end

#to_sObject



13
14
15
# File 'lib/flexa_lib/brcpfcnpj/cpf_cnpj.rb', line 13

def to_s
  @numero || ""
end

#valido?Boolean

Verifica se o numero possui o formato correto e se constitui um numero de documento valido, dependendo do seu tipo (Cpf ou Cnpj).

Returns:

  • (Boolean)


24
25
26
27
# File 'lib/flexa_lib/brcpfcnpj/cpf_cnpj.rb', line 24

def valido?
  return false unless @match
  verifica_numero
end