2012-01-11 11 views
5

これは動作するようです:MooseX :: Declareでは 'method'と同じ行に '{'が必要ですか?

use MooseX::Declare; 

class Example { 
    method my_method() { 

    } 
} 

これは、メソッドを作成しないようだ。

use MooseX::Declare; 
class Example { 
    method my_method() 
    { 

    } 
} 

私は何かが足りない、またはそれが開いて中括弧は上に行くために持っていることをMooseX::Declareの制限ですアム「方法」と同じ行ですか?

--edit--

MooseX::Declare = 0.35

Devel::Declare = 0.006004 - 私はDevel::Declareでバージョンダウンだように見える、それ以降のバージョンでは、何らかのビルドの問題へのActiveState Perlの内で利用できるようにしていないようです:http://code.activestate.com/ppm/Devel-Declare/(最大0.006008まで)

+0

ビルドの問題は奇妙です。 Devel :: Declareは、そのMakefile.PLがハングする原因となる何か奇妙なことをしていません。多くの代替PPMリポジトリがあります:http://win32.perl.org/wiki/index.php?title=PPM_Repositories Strawberry Perlはコンパイラに付属しており、CPANからほとんどのモジュールをインストールできます。 http://strawberryperl.com/ – Schwern

+0

@Schwern、ストロベリーに切り替える必要はありません。 'cpan'はASでもうまく動作します。コンパイラをお持ちでない場合、ASは 'mingw'をダウンロードし、インストールして使用します。 – ikegami

+0

問題は実際にはMooseX :: Method :: Signaturesにあります。私は0.37(最新)です。 – ikegami

答えて

4

はい、うまくいくはずです。構文マジックを行うDevel :: DeclareやMooseX :: Declareをアップグレードしなければならないかもしれません。

関連する問題