NAME

   Geo::CEP - Resolve Brazilian city data for a given CEP

VERSION

   version 1.0

SYNOPSIS

       use common::sense;
       use utf8::all;

       use Data::Printer;

       # 'memoize' é extremamente vantajoso em casos aonde a mesma
       # instância é utilizada para resolver lotes grandes de CEPs
       use Geo::CEP qw(memoize);

       my $gc = Geo::CEP->new;
       p $gc->find("12420-010");

       # Saída:
       # \ {
       #     cep_final    12449999
       #     cep_initial  12400000
       #     city         "Pindamonhangaba",
       #     ddd          12,
       #     lat          -22.9166667,
       #     lon          -45.4666667,
       #     state        "SP",
       #     state_long   "São Paulo"
       # }

DESCRIPTION

   Obtém os dados como: nome da cidade, do estado, número DDD e
   latitude/longitude (da cidade) para um número CEP (Código de
   Endereçamento Postal) brasileiro.

   Diferentemente do WWW::Correios::CEP, consulta os dados armazenados
   localmente. Por um lado, isso faz Geo::CEP ser extremamente rápido (5
   mil consultas por segundo); por outro, somente as informações à nível
   de cidade são retornadas.

ATTRIBUTES

data, index

   FileHandle para os respectivos arquivos.

length

   Tamanho do índice.

states

   Mapeamento de código de estado para o nome do estado (AC => 'Acre').

idx_len

   Tamanho do registro de índice.

METHODS

find($cep)

   Busca por $cep (no formato 12345678 ou "12345-678") e retorna HashRef
   com:

     * cep_initial: o início da faixa de CEPs da cidade;

     * cep_final: o término da faixa de CEP da cidade;

     * state: sigla da Unidade Federativa (SP, RJ, MG);

     * state_long: nome da Unidade Federativa (São Paulo, Rio de Janeiro,
     Minas Gerais);

     * city: nome da cidade;

     * ddd: código DDD (pode estar vazio);

     * lat/lon: coordenadas geográficas da cidade (podem estar vazias).

   Retorna undef quando não foi possível encontrar.

list()

   Retorna HashRef com os dados de todas as cidades.

SEE ALSO

     * cep2city

     * Business::BR::CEP

     * WWW::Correios::CEP

     * WWW::Correios::PrecoPrazo

     * WWW::Correios::SRO

CONTRIBUTORS

     * Blabos de Blebe <https://metacpan.org/author/BLABOS>

AUTHOR

   Stanislaw Pusep <[email protected]>

COPYRIGHT AND LICENSE

   This software is copyright (c) 2014 by Stanislaw Pusep.

   This is free software; you can redistribute it and/or modify it under
   the same terms as the Perl 5 programming language system itself.