Erlang-전 처리기

Erlang 모듈이 컴파일되기 전에 Erlang 전처리기에 의해 자동으로 처리됩니다. 전처리 기는 소스 파일에있을 수있는 모든 매크로를 확장하고 필요한 포함 파일을 삽입합니다.

일반적으로 전 처리기의 출력을 볼 필요는 없지만 예외적 인 상황 (예 : 결함이있는 매크로를 디버깅하는 경우)에서는 전 처리기의 출력을 저장할 수 있습니다. 모듈 전처리 결과를 보려면some_module.erl OS 쉘 명령을 제공하십시오.

erlc -P some_module.erl

예를 들어, 다음 코드 파일이 있다고 가정합니다.

-module(helloworld). 
-export([start/0]). 
-include("user.hrl"). 

start() -> 
   io:fwrite("~w",[?macro1(1,2)]).

그리고 명령 줄에서 다음 명령을 실행하면-

erlc –P helloworld.erl

라는 파일 helloworld.P생성됩니다. 이 파일을 열면 전처리 기가 컴파일하는 다음 내용을 찾을 수 있습니다.

-file("helloworld.erl", 1). -module(helloworld).

-export([start/0]).
-file("user.hrl", 1).
-file("helloworld.erl", 3).

start() ->
   io:fwrite("~w", [{1 + 2}]).