2014-03-30 2 views
2

Java APT에는 프로그램 주석을 처리하기위한 일련의 반사 API와 지원 인프라가 포함되어 있으며 Dart에 비슷한 것이 있는지 알고 싶습니다.다트 언어의 APT (Java Annotation Processing Tool)와 비슷한 기능 및/또는 동일한 기능이 있습니까?

+1

@JasonC이 항목이 중복 된 것으로 생각하지 않습니다. 참조 된 질문은 런타임 액세스에 관한 것이며 APT는 주석에 대한 액세스 시간을 빌드하는 것이라고 생각합니다. –

+1

@ GünterZöchbauer 나는 그것이 그런 식으로 읽는다고 생각한다; 투표를 취소했습니다. –

답변

2

당신은 analyzer package와 비슷한 작업을 수행 할 수 있습니다. 이 패키지를 사용하면 AST 또는 해결 된 AST (유형 포함)을 소스에서 가져 와서 탐색 할 수 있습니다.

그래, apt과 같은 소스 코드를 처리 할 수 ​​있습니다.

2

나는 결코 Java APT를 사용하지 않았으며 단지 매우 간단한 Google 검색을 수행했습니다.
그러나 이것이 여러 다트 패키지에서 이미 사용되는 것으로 알고 있습니다.
소스 미러가 있습니다. 실제로 실행하지 않고 다트 소스 코드에 반영 할 수 있습니다.
이것은 일반적으로 빌드 프로세스 중에 실행되는 변환기에 사용됩니다.
pubspec.yaml 구성 파일에 사용자 지정 변환기를 추가 할 수 있습니다. http://pub.dartlang.org/packages/smoke
소스 저장소 :

이 패키지는 가치가보고 될 수있다 https://github.com/dart-lang/bleeding_edge/tree/master/dart/pkg/smoke

+0

당신은 다음과 같이 말했습니다 : _ "나는 Java APT를 전혀 사용하지 않았으며 매우 간단한 Google 검색을 수행했지만 아직 몇몇 다트 패키지에서 사용되는 것으로 알고 있습니다."_ 이것을 분명히 할 수 있습니까? "this is used"또는 "this is not used used"라는 뜻입니까? – user224567893

+0

APT라고 생각하는 것이 완전히 잘못 될 수 있다는 것을 의미합니다. 내가 찾은 검색 결과에서 몇 문장 만 읽었습니다. 내 이해가 이것보다 완전히 틀리지 않다면 여러 다트 패키지가 사용하는 것과 비슷할 수 있습니다. Polymer와 마찬가지로'smoke' 라이브러리를 사용하여'@ published' 또는 @ observable로 주석 처리 된 필드를 읽기/모니터링하기 위해 리플렉션을 사용하는 코드를 리플렉션을 사용하지 않는 코드로 변환합니다. –