আমি কয়েকটি সাবসেট সংজ্ঞায়িত করতে চাই যেখানে আমি die
কয়েকটি কার্যকর ত্রুটি বার্তার জন্য কয়েকটি বাধা এবং কিছু বিবৃতি যুক্ত করছি। আমি সেইগুলিকে যে মডিউলগুলি ব্যবহার করে তার শীর্ষে এগুলি সংজ্ঞায়িত করতে চাই না এবং পরিবর্তে তাদের সম্পূর্ণরূপে যোগ্যতাসম্পন্ন নাম (এফকিউএন) ব্যবহার করে দূরে রেখে অন্য মডিউলে রাখতে চাই। উদাহরণস্বরূপ, আমি আছে
unit module Long::Module::Subsets;
subset PosInt
where ($_ ~~ Int || "The value must be an integer")
&& ($_ > 0 || "The value must be greater than 0")
is export
;
# other subsets ...
কিন্তু পেয়েছি
===SORRY!=== Error while compiling /tmp/637321813/main.pl6
Two terms in a row ...
আমি যে কাজ করেছিলাম তা অনুভব করেছি যে পরিবর্তে আমি নীচে কিছু করতে পারি তবে আমি ভাবছি যে আমি যদি এটি করা এড়াতে পারি:
use Long::Module::Subsets;
unit Long::Module;
my constant PosInt = Long::Module::Subsets::PosInt;
my constant Byte = Long::Module::Subsets::Byte;
# ... more subsets here
# ... some code here
my PosInt $age;