diff options
author | Dylan William Hardison <dylan@hardison.net> | 2018-05-22 02:54:58 +0200 |
---|---|---|
committer | Dylan William Hardison <dylan@hardison.net> | 2018-06-28 22:41:57 +0200 |
commit | e216176239965bb5bd98a0008fd8c71b14ee9624 (patch) | |
tree | ba7e201ba6ba4c530e77574e0cb2796b46841e43 /Bugzilla/Quantum/Stdout.pm | |
parent | f2f708f6985dd3a7c51869c0dda5791ca239d248 (diff) | |
download | bugzilla-e216176239965bb5bd98a0008fd8c71b14ee9624.tar.gz bugzilla-e216176239965bb5bd98a0008fd8c71b14ee9624.tar.xz |
almost everything works
Diffstat (limited to 'Bugzilla/Quantum/Stdout.pm')
-rw-r--r-- | Bugzilla/Quantum/Stdout.pm | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Bugzilla/Quantum/Stdout.pm b/Bugzilla/Quantum/Stdout.pm new file mode 100644 index 000000000..fe2d2eff7 --- /dev/null +++ b/Bugzilla/Quantum/Stdout.pm @@ -0,0 +1,41 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This Source Code Form is "Incompatible With Secondary Licenses", as +# defined by the Mozilla Public License, v. 2.0. + +package Bugzilla::Quantum::Stdout; +use 5.10.1; +use Moo; + +has 'controller' => ( + is => 'ro', + required => 1, +); + +sub TIEHANDLE { ## no critic (unpack) + my $class = shift; + + return $class->new(@_); +} + +sub PRINTF { ## no critic (unpack) + my $self = shift; + $self->PRINT(sprintf @_); +} + +sub PRINT { ## no critic (unpack) + my $self = shift; + + foreach my $chunk (@_) { + utf8::encode($chunk); + $self->controller->write($chunk); + } +} + +sub BINMODE { + # no-op +} + +1;
\ No newline at end of file |