1*e8f5c617SMarkus Heiser# -*- coding: utf-8; mode: python -*- 2*e8f5c617SMarkus Heiseru""" 3*e8f5c617SMarkus Heiser cdomain 4*e8f5c617SMarkus Heiser ~~~~~~~ 5*e8f5c617SMarkus Heiser 6*e8f5c617SMarkus Heiser Replacement for the sphinx c-domain. 7*e8f5c617SMarkus Heiser 8*e8f5c617SMarkus Heiser :copyright: Copyright (C) 2016 Markus Heiser 9*e8f5c617SMarkus Heiser :license: GPL Version 2, June 1991 see Linux/COPYING for details. 10*e8f5c617SMarkus Heiser""" 11*e8f5c617SMarkus Heiser 12*e8f5c617SMarkus Heiserfrom sphinx.domains.c import CObject as Base_CObject 13*e8f5c617SMarkus Heiserfrom sphinx.domains.c import CDomain as Base_CDomain 14*e8f5c617SMarkus Heiser 15*e8f5c617SMarkus Heiser__version__ = '1.0' 16*e8f5c617SMarkus Heiser 17*e8f5c617SMarkus Heiserdef setup(app): 18*e8f5c617SMarkus Heiser 19*e8f5c617SMarkus Heiser app.override_domain(CDomain) 20*e8f5c617SMarkus Heiser 21*e8f5c617SMarkus Heiser return dict( 22*e8f5c617SMarkus Heiser version = __version__, 23*e8f5c617SMarkus Heiser parallel_read_safe = True, 24*e8f5c617SMarkus Heiser parallel_write_safe = True 25*e8f5c617SMarkus Heiser ) 26*e8f5c617SMarkus Heiser 27*e8f5c617SMarkus Heiserclass CObject(Base_CObject): 28*e8f5c617SMarkus Heiser 29*e8f5c617SMarkus Heiser """ 30*e8f5c617SMarkus Heiser Description of a C language object. 31*e8f5c617SMarkus Heiser """ 32*e8f5c617SMarkus Heiser 33*e8f5c617SMarkus Heiserclass CDomain(Base_CDomain): 34*e8f5c617SMarkus Heiser 35*e8f5c617SMarkus Heiser """C language domain.""" 36*e8f5c617SMarkus Heiser name = 'c' 37*e8f5c617SMarkus Heiser label = 'C' 38*e8f5c617SMarkus Heiser directives = { 39*e8f5c617SMarkus Heiser 'function': CObject, 40*e8f5c617SMarkus Heiser 'member': CObject, 41*e8f5c617SMarkus Heiser 'macro': CObject, 42*e8f5c617SMarkus Heiser 'type': CObject, 43*e8f5c617SMarkus Heiser 'var': CObject, 44*e8f5c617SMarkus Heiser } 45