답변

4

이론상으로 그렇다. 실제로, 아니오.

기존 이름에 대한 내용을 찾으려면 reify :: Name -> Q Info을 사용하고, 이와 같은 정의의 경우 Maybe Dec 필드를 포함하는 VarI 값을 다시 가져올 수 있습니다. 이것은 어떤 경우에는 변수의 선언을위한 문법 트리를 얻을 수 있지만 리터럴을 추출 할 수 있다고 제안하는 것처럼 보일 것입니다 (current versions of GHC always returns Nothing in this field). 그래서 당신은 순수한 TH 솔루션을 얻지 못할 것입니다.

그러나 TH는 임의의 IO 작업을 실행할 수 있으므로 haskell-src-exts과 같은 것을 사용하여 모듈을로드하고 구문 분석하여 잠재적으로이 문제를 해결할 수 있습니다. 그러나 그게 가치있는 것보다 더 많은 문제가 될 것으로 생각됩니다.

관련 문제