2011-02-18 2 views
0
나는 기본적으로이 확장 할 매크로하고 싶습니다

: 내가 읽어 봤는데AST 변환 : 기본 생성자를 제공하는 매크로 만들기

class Person { 
    private String name 
    private String address 

    Person(String name, String address) { 
    this.name = name 
    this.address = address 
    } 
} 

이에

@WithBasicConstructor 
class Person { 
    private String name 
    private String address 
} 

@Immutable 코드를 통해 어떻게 수행되는지에 대한 느낌을 얻을 수 있습니다. 누구든지 새로운 AstBuilder를 사용 했습니까?

아이디어를 구현하는 방법은 무엇입니까? 문자열/코드/스펙을 위해 AstBuilder 사이에 선호되는 옵션이 있습니까?

+0

@Immutable에 의해 아직 제공되지 않은 @WithBasicConstructor가 제공 할 바람직한 속성은 무엇입니까? –

+0

@Immutable은 내가 원하는 것 이외에 많은 양의 다른 것들을 클래스에 적용한다. –

답변

1

groovy 1.8에서 @groovy.transform.TupleConstructor을 사용하거나 복사 할 수 있습니다.
환경 설정에 관해서 ... 나는 buildFromSpec을 좋아하는데, 그것은 놀라움을 줄입니다.
그러나 나는 당신이 buildFromCode을 시험해보고, 그 한계와 단점을 시험해보고, 그들 모두와 조금 놀아 볼 것을 제안합니다.