2012-02-09 12 views
11

nei progetti open source compaiono i seguenti due modi di scrivere le specifiche:Guida alla scrittura di specifiche in Erlang

Spec nei commenti

@spec start_link() -> {ok, pid()} 

Spec nel codice sorgente

-spec start_link() -> {ok, pid()} 

Qual è la differenza? Si preferisce l'altro?

risposta

13

La versione del commento (@spec) è antecedente alla versione del codice sorgente (-spec). Quest'ultimo è preferibile.

secondo le EDoc documentation:

Nota: Anche se la sintassi descritta nel seguente può ancora essere utilizzato per specificare le funzioni si consiglia di specifiche Erlang come descritti in Types and Function Specification dovrebbe essere aggiunto al codice fonte invece . In questo modo le analisi di Dialyzer possono essere utilizzate nel processo di mantenere la documentazione coerente e aggiornata . Le specifiche di Erlang saranno utilizzate a meno che non ci sia anche una specifica di funzione (un tag @spec seguito da un tipo) con lo stesso nome .

Problemi correlati