(Muhtemelen bir doyurucu cevap, maddenin gerçekler ... değil özellikle dokümantasyon durumuna dair, ama burada gider, çok tatmin edici oldukları için)
ise modül veya sınıf la class Bar:auth<Camelia>:ver<4.8.12>
bir kaynak kod doğrudan sürüm, daha sonra içe herhangi bir kod bunu introspect olabilir:
use Bar;
say Bar.^ver; # v4.8.12
say Bar.^auth; # Camelia
# ...which is short for:
say Bar.HOW.ver(Bar); # v4.8.12
say Bar.HOW.auth(Bar); # Camelia
T
Metamodel::ClassHOW
(yani dokümantasyon sayfasından henüz bunları söz etmez rağmen)
Metamodel::ModuleHOW
(yani dokümantasyon sayfasından hiç henüz yok rağmen) : o
ver
ve
auth
yöntemler tarafından sağlanmaktadır
Ne yazık ki, meta-nesne şu anda almak için bir yol sağlar sanmıyorum Modül/sınıfın kaynak yolu. elle use
ve require
derleme birimleri yüklemek alması adımını atmaya
, en az (yani vb $PERL6LIB
veya use lib
veya -I
den hangi konumu elde yüklendi) önek yolda alabilirsiniz:
my $comp-spec = CompUnit::DependencySpecification.new: short-name => 'Bar';
my $comp-unit = $*REPO.resolve: $comp-spec;
my $comp-repo = $comp-unit.repo;
say $comp-repo.path-spec; # file#/home/smls/dev/lib
say $comp-repo.prefix; # "/home/smls/dev/lib".IO
$comp-unit
, CompUnit
türünde bir nesnedir.
$comp-repo
, CompUnit::Repository::FileSystem
'dir.
Her iki belge sayfası henüz mevcut değil ve $*REPO
yalnızca list of dynamic variables numaralı belgede belirtilmiştir.
if try $comp-unit.distribution.meta -> %dist-meta {
say %dist-meta<ver>;
say %dist-meta<auth>;
say %dist-meta<license>;
}
: modül düzgün set-up
distribution parçasıysa
, sen onun META6.json
(Bahsettiğiniz posta listesi dizisindeki as posted by Lloyd Fournier) tanımlanan meta bilgi de alabilirsiniz
["auth", "yazar" değil "auth" dir (https://irclog.perlgeek.de/perl6/2017-04-20#i_14460369). – raiph
"[auth] bilgisi ... META.json dosyasında ancak kodu göstermiyor." [TimToady, bu problem üzerinde] (https://irclog.perlgeek.de/perl6/2017-04-20#i_14460332): "Bir modül yandığında yeni bir sürümü zorla ... Ben düzeltmek için jnthn için bir pr gönderdi bir hata, ancak yama düzeyini artırmayı unutmuş, bu yüzden zef görmüyor ... ad/ver/auth [must] resmi bir kütüphaneye yüklendiğinde benzersiz bir metne karşılık geliyor [OR] bir [kripto] hash kısmını kimliğinin [OR] git revision ... benzersiz bir şekilde aradığınız "doğru" sürümünü isimlendiremezseniz bir kabus olacak. " – raiph