annotate lib/Abyss/Server.pm6 @ 0:11ef16a351e6

move from otoya
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Fri, 17 Jan 2020 12:11:01 +0900
parents
children e23d55b94840
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 use v6.c;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 unit class Abyss::Server:ver<0.0.1>:auth<cpan:ANATOFUZ>;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 use MONKEY-SEE-NO-EVAL;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 method readeval {
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 my $listen = IO::Socket::INET.new( :listen,
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 :localhost<localhost>,
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 :localport(3333) );
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 my $counter = 0;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 my $now = DateTime.now(formatter => { sprintf "%03d:%03d:%03d", .hour, .minute ,.second});
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 loop {
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 my $conn = $listen.accept;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 while my $buf = $conn.read(1024) {
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 EVALFILE $buf.decode;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 $counter++;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 }
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 $conn.close;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 if ($counter == 100) {
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 last;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 }
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 }
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 $now = DateTime.now(formatter => { sprintf "%03d:%03d:%03d", .hour, .minute ,.second});
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 say $now;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 }
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 =begin pod
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 =head1 NAME
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 Abyss::Server - blah blah blah
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 =head1 SYNOPSIS
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 =begin code :lang<perl6>
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 use Abyss::Server;
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
41
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 =end code
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 =head1 DESCRIPTION
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 Abyss::Server is ...
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 =head1 AUTHOR
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 AnaTofuZ <anatofuz@gmail.com>
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 =head1 COPYRIGHT AND LICENSE
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
53
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 Copyright 2020 AnaTofuZ
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57
11ef16a351e6 move from otoya
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 =end pod