Devel-IPerl
view release on metacpan or search on metacpan
lib/Devel/IPerl/Kernel/Callback.pm view on Meta::CPAN
use strict;
use warnings;
use Moo;
use Devel::IPerl::Message::Helper;
use namespace::autoclean;
sub msg_kernel_info_request {
my ($self, $kernel, $msg ) = @_;
### send kernel status : busy
my $status_busy = Devel::IPerl::Message::Helper->kernel_status( $msg, 'busy' );
$kernel->send_message( $kernel->iopub, $status_busy );
my $reply = $msg->new_reply_to(
msg_type => 'kernel_info_reply',
content => {
protocol_version => '5.0',
implementation => 'iperl',
implementation_version => $Devel::IPerl::VERSION // '0.0.0',
language_info => {
name => 'perl',
version => substr($^V, 1), # 1 character past the 'v' prefix
lib/Devel/IPerl/Kernel/Callback.pm view on Meta::CPAN
$kernel->send_message( $kernel->shell, $reply );
### send kernel status : idle
my $status_idle = Devel::IPerl::Message::Helper->kernel_status( $msg, 'idle' );
$kernel->send_message( $kernel->iopub, $status_idle );
}
sub msg_shutdown_request {
my ($self, $kernel, $msg) = @_;
### send kernel status : busy
my $status_busy = Devel::IPerl::Message::Helper->kernel_status( $msg, 'busy' );
$kernel->send_message( $kernel->iopub, $status_busy );
my $shutdown_reply = $msg->new_reply_to(
msg_type => 'shutdown_reply',
content => {
restart => 0, # TODO take $msg->restart into account
}
);
$kernel->send_message( $kernel->shell, $shutdown_reply );
$kernel->stop;
lib/Devel/IPerl/Kernel/Callback/REPL.pm view on Meta::CPAN
sub display_data_from_exec_result {
my ($self, $kernel, $msg, $exec_result) = @_;
$self->display_data( @{ $exec_result->results || [] } );
}
sub msg_execute_request {
my ($self, $kernel, $msg ) = @_;
### send kernel status : busy
my $status_busy = Devel::IPerl::Message::Helper->kernel_status( $msg, 'busy' );
$log->tracef('send kernel status: %s', 'busy');
$kernel->send_message( $kernel->iopub, $status_busy );
### Send back execution status
my $exec_result = $self->execute( $kernel, $msg );
$self->execute_reply( $kernel, $msg, $exec_result );
### send kernel status : idle
my $status_idle = Devel::IPerl::Message::Helper->kernel_status( $msg, 'idle' );
$log->tracef('send kernel status: %s', 'idle');
$kernel->send_message( $kernel->iopub, $status_idle );
}
lib/Devel/IPerl/Kernel/Callback/REPL.pm view on Meta::CPAN
execution_count => $self->execution_count,
%extra_fields,
}
);
$kernel->send_message( $kernel->shell, $execute_reply );
}
sub msg_complete_request {
my ($self, $kernel, $msg, $socket ) = @_;
### send kernel status : busy
my $status_busy = Devel::IPerl::Message::Helper->kernel_status( $msg, 'busy' );
$kernel->send_message( $kernel->iopub, $status_busy );
my $code = $msg->content->{code};
my $cursor_pos = $msg->content->{cursor_pos};
my @matches = ();
my $metadata = {};
my ($status, $cursor_start, $cursor_end);
my $matched_text = "";
if( $self->backend->can('completion') ) {
try {
lib/Devel/IPerl/Kernel/Callback/REPL.pm view on Meta::CPAN
$kernel->send_message( $kernel->shell, $complete_reply );
### send kernel status : idle
my $status_idle = Devel::IPerl::Message::Helper->kernel_status( $msg, 'idle' );
$kernel->send_message( $kernel->iopub, $status_idle );
}
sub msg_is_complete_request {
my ($self, $kernel, $msg, $socket ) = @_;
### send kernel status : busy
my $status_busy = Devel::IPerl::Message::Helper->kernel_status( $msg, 'busy' );
$kernel->send_message( $kernel->iopub, $status_busy );
my $content;
if ($self->backend->is_complete( $msg->{content}{code} )) {
$content = {
status => 'complete',
};
} else {
$content = {
status => 'incomplete',
indent => '',
( run in 0.238 second using v1.01-cache-2.11-cpan-87723dcf8b7 )