2014-12-06 3 views
1

유형 매개 변수의 유형을 추출 할 수 있는지 궁금합니다. 예를 들어 내가 좋아하는 뭔가를 할 수 있도록하려면 :Rascal의 인쇄 유형 매개 변수

case list[&T] _: println("list of <&T> type"); 

내가 무엇을 찾고는 동일한 보이지만 다른 유형이 있고 특정 유형을 사용할 수있는 다양한 패턴과 일치하는 것입니다.

이것이 가능합니까? 아니면 이것을 달성 할 다른 방법이 있습니까?

답변

2

the Rascal Tutor에 설명 된 typeOf을 찾고 있습니다. 다음과 같이 인수의 유형을 정의 할 수 있습니다 인쇄하는 기능은 (당신의 비열한 소스 파일에 import Type;을 추가해야합니다) :

void printMyType(&T a) { println("<typeOf(a)>"); } 

예 :

rascal>printMyType(3) 
int() 
ok 

rascal>printMyType("abc") 
str() 
ok 
+0

뜨아합니다. 나는 문서에서 그것을 보았지만 그것을 어떻게 사용할 수 있는지는 알려지지 않았다. 감사! – josh

+1

당신은 오신 것을 환영합니다. Upvotes 허용 ;-) –