Moops - это метафреймворк для объектно-ориентированного программирования на языке программирования Perl.
0 ответов

Moops lexical_has и значения по умолчанию

Я пытаюсь понять как lexical_has Атрибуты работают в Moops. Эта функция исходит от Lexical::Accessor и, насколько я понимаю, lexical_has функция может генерировать CODE ссылка на любой атрибут class может "лексически иметь" с помощью скалярной ссылк…
19 дек '14 в 02:38
1 ответ

Могу ли я создать экземпляр объекта в Dancer, чтобы вернуть значение для отображения?

У меня есть следующий код в моем модуле приложения Dancer: package Deadlands; use Dancer ':syntax'; use Dice; our $VERSION = '0.1'; get '/' => sub { my ($dieQty, $dieType); $dieQty = param('dieQty'); $dieType = param('dieType'); if (defined $dieQ…
11 дек '13 в 17:48
1 ответ

Универсальный класс трассировки

Я пытаюсь построить удобный класс насмешки, используя moops: #!/usr/bin/env perl use Modern::Perl '2014'; use Moops; use Test::More; class aClass { method m {} method l {} }; class NotWorkingMockAClass extends aClass { has methodCallLog => ( is =…
27 янв '15 в 15:22
1 ответ

Используйте мета-атрибуты MooseX с Moops

Можно ли использовать мета-атрибуты MooseX с Moops? Рассмотрим пример кода Moose: use v5.14; use strict; use warnings; package TraitTest; use Moose; with 'MooseX::Getopt'; has opt1 => ( traits => ['Getopt'], is => 'ro', isa => 'Bool', cm…
03 фев '14 в 15:54
2 ответа

Поддержка ctags для moops

Moops улучшает синтаксис perl такими конструкциями, как: class MyPkg::MyClass { # ... } и добавляет возможность объявлять подписи для функций-членов, вводя новые ключевые слова fun а также method: class MyPkg::MyClass { method run(ArrayRef $ar){ } …
04 фев '14 в 16:40
1 ответ

Изменение префикса писателя, когда (is => "rwp")

Если я хочу изменить защищенный от записи атрибут т.е. use Moops; class foo { has attr => (is => "rwp"); } нужно использовать _set_attr(), Можно ли изменить это на _attr() без использования явного writer? Пытался use MooseX::::AttributeShortcu…
24 сен '15 в 14:03
1 ответ

Как я могу перегрузить методы в Moops?

Я хотел бы перегрузить некоторые методы в Moops. Я попробовал следующий код: method setIdNum() { print "Please enter ID number: "; chomp (my $input = <STDIN>); $self->$idNum($input); } method setIdNum(Int $num) { $self->$idNum($num); } Н…
04 дек '14 в 16:50
2 ответа

class_has для Moops

Есть ли что-то вроде MooseX::ClassAttribute для Moops? Обратите внимание, что я хочу статические / классовые атрибуты, используя Moo бэкэнд, так как я не хочу вносить в Moose бэкенд.
20 ноя '14 в 14:50
1 ответ

Метод доступа к атрибутам, не удовлетворяющий требованию роли при использовании Moops и Moose

Рассмотрим следующий пример кода: use Moops; role RoleA using Moose { requires 'm1'; method m2() { $self->m1." World!\n"; } } role RoleB using Moose { has 'm1' => ( accessor => 'm1', is => 'ro', isa => 'Str', default => 'Hello'); }…
03 фев '14 в 13:23
1 ответ

Импорт функций / подпрограмм в подкласс

Я использую Moops и я хотел бы, чтобы что-то вроде этого работало: use Moops; class A { fun f { print "yay,f!\n"; } } class B extends A { fun g { f(); } } B->g(); # should print 'yay, f!' Вместо этого это дает: Undefined subroutine &B::f call…
28 авг '14 в 10:59
1 ответ

Может кто-нибудь объяснить, как реализовать и использовать массивы частной области в Moops?

Я пытаюсь изучить Moops, и я не могу понять, как использовать заполнение и перебирать lexical_has arrayRefs. Можете ли вы продемонстрировать их использование здесь с кодом, пожалуйста? Я написал следующее: lexical_has people => (is => 'rw', is…
03 дек '14 в 16:59