2012-02-03 28 views
5

Non riesco a capire come funziona doxygen con namespace in Python. Uno spazio dei nomi del nome "nomefile", ovvero temp.py, viene generato per impostazione predefinita. Posso anche dichiarare nuovi spazi dei nomi con il comando \package o \namespace.Capire la documentazione dello spazio dei nomi

Tuttavia, ciò che non capisco è perché la classe seguente (o qualsiasi altra definizione) appare sempre sotto lo spazio dei nomi temp?

Per favore aiutami a capire come funziona il comando namespace in doxygen.

Se si conosce come e perché/comandi dello spazio dei nomi pr/package vengono utilizzati in doxygen, è possibile ignorare l'esempio di seguito e rispondere direttamente.

#filename = temp.py 
##\mainpage Main Page Title 
#\brief main page title comments \n 




## class class_demo1 \n 
# the class declared below \n 
class class_demo1: 
     pass 

from new_package import * 

Ora, io sono l'aggiunta di un nuovo spazio dei nomi con il nome \ new_package, aggiunta al file temp.py

##\package new_package 
#new namespace comments \n 

Ho anche creato un file chiamato \ new_package.py e ha aggiunto la di seguito le linee in esso:

def demo_fun: 
    pass 

class demo_class: 
    pass 

nella documentazione generata, ottengo \ class_demo1 sotto namespace \ temp. Tuttavia, il nuovo spazio dei nomi \ new_package.py non visualizza la classe e la def dichiarata sotto it.

risposta

2

Per mettere Demo classe in new_package spazio se esso è definito nel modulo new_package.temp:

new_package/ 
├── __init__.py 
│ # from .temp import Demo 
└── temp.py 
    # class Demo: 
    #  pass 

In questo caso doxygen avrebbe bisogno solo di riflettere la relazione che è già nel codice.

+0

@Sebastian puoi pubblicare qualche piccolo codice di esempio (nuovo o basato sul mio esempio) per aiutarmi a capirlo meglio. – Ani

Problemi correlati