сейчас ноуп. Я не делал ничего плохого, и результат, который я показал, - ожидаемый в настоящее время результат. Поскольку CompUnit предназначен для скорости, его нельзя использовать для управления кодом. Это нормально.

аюсь создать кеш POD6, предварительно скомпилировав их с помощью набора классов CompUnit.

Я могу создавать, хранить и извлекать модуль следующим образом:

use v6.c;
use nqp;
my $precomp-store =     CompUnit::PrecompilationStore::File.new(prefix=>'cache'.IO);
my $precomp = CompUnit::PrecompilationRepository::Default.new(store=> $precomp-store );
my $key = nqp::sha1('test.pod6');
'test.pod6'.IO.spurt(q:to/CONTENT/);
=begin pod
=TITLE More and more

Some more text

=end pod

CONTENT
$precomp.precompile('test.pod6'.IO, $key, :force);
my $handle = $precomp.load($key, )[0];
my $resurrected = nqp::atkey($handle.unit,'$=pod')[0];
say $resurrected ~~ Pod::Block::Named;

Так что теперь я меняю POD, как я могу использовать:since флаг? Я думал, что если:since содержит время после компиляции, тогда значение дескриптора будет Nil. Кажется, это не так.

my $new-handle = $precomp.load($key, :since('test.pod6'.IO.modified));
say 'I got a new handle' with $new-handle;

Вывод «Я получил новую ручку».

Что я делаю не так? Вот ссылка для вставки с кодом и выводом:https://pastebin.com/wtA9a0nP

Ответы на вопрос(1)

Ваш ответ на вопрос