Acme-VOYAGEGROUP-ConferenceRoom

 view release on metacpan or  search on metacpan

lib/Acme/VOYAGEGROUP/ConferenceRoom.pm  view on Meta::CPAN

        normalization => qr/^あんたーくてぃか|アンタークティカ$/ms,
        position      => qr{ \s(/*\|\s+\|\s+\|\s+\|\s+\|)$ }x,
    },
    ajito => {
        lines         => [15..16],
        normalization => qr/^あじと|アジト$/ms,
        position      => qr{ \s(/*\|)$ }x,
    },
);

my %OUTPUT_OF = (
    color        => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::Color',
    json         => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::JSON',
    xml          => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::XML',
    message_pack => 'Acme::VOYAGEGROUP::ConferenceRoom::Output::MessagePack',
);

sub conference_room {
    my $room_name = shift or croak "Conference Room Not Found";
    my $output_type = shift || 'color';

lib/Acme/VOYAGEGROUP/ConferenceRoom.pm  view on Meta::CPAN

    croak "Conference Room Not Found: $room_name" unless $process;

    croak "Mistake Position: $process->{position}" if $process->{position} !~ m/\s(\^?).+?(\$?)\s/xms;
    my @lines = split "\n", FLOOR_PLAN;
    my($head, $tail) = ($1) ? ('', '/') : ('/', '');
    for my $i (@{ $process->{lines} }) {
        1 while $lines[$i] =~ s{$process->{position}}{$head$1$tail};
    }

    if ($output_type ne 'none') {
        my $module = $OUTPUT_OF{$output_type};
        croak "No Type: $output_type" unless $module;

        return $module->convert(\@lines) if $module->use;
    }

    join "\n", @lines;
}

sub _normalize {
    my $room_name = shift;



( run in 0.411 second using v1.01-cache-2.11-cpan-4e96b696675 )