2012-04-01 14 views
1

Dialysator mag keine Aufrufe von Funktionen im Basismodul. Gibt es ein Dialysator-Flag, um diesen Fehler zu überspringen oder mache ich etwas falsch.erlang dialyzer und erweiterte Module

Hier ist ein ähnlicher Code:

-module(base). 
-export(foo/1). 

foo(X) -> X*2. 


-module(derived). 
-extends(base). 
-export(xyz/0). 

xyz() -> 
    ?MODULE:foo(5). 

Dieses Stück Code funktioniert, wie ich es arbeiten erwarten. Meine einzige Sorge ist die Warnung des Dialysators;

--- erl. 41: Rufen Sie fehlende oder unexported Funktion ---: ---/3

Bin ich etwas falsch oder ist es Dialysator eine unnötige Warnung zu geben?

Antwort

3

Dialysator unterstützt keine erweiterten Module, und es gibt auch keine Pläne für eine solche Erweiterung. Soweit ich weiß, ist Modulvererbung nicht einmal ein offizielles Merkmal von Erlang.

Entschuldigung ...

+0

Ich wusste nicht, dass es kein offizielles Feature war. Vielleicht sollte ich es gar nicht erst verwenden, es kam in einigen Situationen zum Einsatz – cashmere