2011-09-18 3 views
2

SO 커뮤니티,Eclipse EPIC 플러그인 및 자동 완성/복잡한 객체를 전달하는 컨텐츠 지원?

메소드에 전달 될 때 Perl 모듈의 메소드에서 자동 완성/컨텐츠 지원을 일관되게 사용하는 방법에 대한 우수 사례 코딩 표준이 있습니다. 예를 들어 :

sub main { 
    my $moduleObject = MyNameSpace::ModuleObject->new(); 
    processModuleObject($moduleObject); 
} 

sub processModuleObject { 

    my $moduleObject = MyNameSpace::ModuleObject->new(); 
    $moduleObject = shift; 
    $moduleObject->runLogic(); 

} 

우리가 알아야 할 모든 코딩 모범 사례가 있습니다

sub main { 
    my $moduleObject = MyNameSpace::ModuleObject->new(); 
    processModuleObject($moduleObject); 
} 

sub processModuleObject { 
    my $moduleObject = shift; 
    $moduleObject->... <- that is were I want context assist/auto-completion to work 

} 

가장 좋은 해결책은 그 일이 내가 행복하지 않다 다음을이었다 얻으려면?

/토마스

답변

0

processModuleObject 메소드에는 아무 것도 전달할 수 없습니다. Perl에는 강력하게 형식화 된 인수와 메소드 서명이 없으며 적어도이를 시행 할 메커니즘은 없습니다.

EPIC IDE는 메소드의 인수가 어떤 유형인지 파악할 수 있습니까? 나는 모른다.

그래도, 당신이 무스 등을 사용할 수있는 옵션 추가 - 온 - 모듈이

method processModuleObject (MyNameSpace::ModuleObject $myobj) { ... } 

을 쓸 수 있지만, EPIC은 무스 구문 및 방법 선언을 인식하지 않도록 MooseX이 :: 선언합니다. 따라서 Eclipse 개요보기가 느슨해집니다. 그러나 매개 변수가 전달 된 곳의 불일치 오류를 입력하면 런타임 오류가 발생하는 경우가 많습니다.

IMHO 누군가 EPIC을 이렇게 확장하면 멋지 겠지만 "무스 인식"이됩니다.

관련 문제