我正在尋找使用Sphinx來記錄VHDL源代碼。理想情況下,我想能夠採取一個VHDL類型是這樣的:是否有可能將Sphinx automodule擴展到Python以外的域?
type T_SDRAM_REQ is record
req : STD_LOGIC;
wr : STD_LOGIC;
address : STD_LOGIC_VECTOR;
wr_data : STD_LOGIC_VECTOR;
wr_ben : STD_LOGIC_VECTOR;
end record T_SDRAM_REQ;
,並使用RST指令是這樣的:
.. vhdl:type:: sdram_pack.T_SDRAM_REQ is record
:members:
提取所有字段從源代碼和RST - 如果是我的話。
我已經創建了一個獅身人面像域,但它對我來說只有這一點還不夠 - 這真的只是一堆自定義指令。我真正想要的東西類似於autoclass或automodule,它掃描Python源文件以生成指令。
但是據我所知,Sphinx automodule的功能只適用於Python。是否可以擴展Sphinx以包含其他語言的類似功能?在VHDL中,可能會被稱爲autopackage或autoentity,在C++中,我猜autonamespace或不同的autoclass?我可以以某種方式將vhdl:autopackage::
指令添加到我的域中嗎?從Sphinx源代碼中我可以看出,我不認爲automodule指令是Python域的一部分。
是的,內置的autodoc擴展僅適用於Python。但你所要求的應該是可能的。例如,對於Java,有一個名爲javasphinx的擴展(https://github.com/bronto/javasphinx)。我不明白爲什麼類似的東西不能用於VHDL。 – mzjn
@mzjn感謝您指點我,但是當它添加Java域和apidoc功能時,據我所知它不會添加autodoc,這就是我所追求的。不能誠實地說我有Java設置來測試它。 –
相關:http://stackoverflow.com/q/37420560/407651 – mzjn