English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Preprocessore Erlang

Prima di compilare un modulo Erlang, il preprocessore Erlang elabora automaticamente il modulo. Il preprocessore espande qualsiasi macro presente nel file sorgente e inserisce qualsiasi file di inclusione necessario.

Di solito, non è necessario visualizzare l'output del preprocessore, ma in casi speciali (ad esempio, quando si debugga un macro errato), potresti voler salvare l'output del preprocessore. Visualizza il risultato della preelaborazione del modulo some_module. Erlang fornisce comandi di shell del sistema operativo.

erlc –P some_module.erl

Ad esempio, supponiamo di avere il seguente file di codice-

Esempi online

-module(helloworld). 
-export([start/0]). 
-include("user.hrl"). 
start() -> 
   io:fwrite("~w", [?macro1(1,2)]).

Se eseguiamo il seguente comando dalla riga di comando-

erlc –P helloworld.erl

Verrà generato un file chiamato helloworld.P. Se aprite questo file, troverete il seguente contenuto, che è il contenuto che il preprocessore compilerà.

-file("helloworld.erl", 1). -module(helloworld).
-export([start/0]).
-file("user.hrl", 1).
-file("helloworld.erl", 3).
start() ->
   io:fwrite("~w", [{1 + 2}]).