sphinx / tests / root / objects.txt

Testing object descriptions
===========================

.. function:: func_without_module(a, b, *c[, d])

   Does something.

.. function:: func_without_body()

.. function:: func_noindex
   :noindex:

.. function:: func_with_module
   :module: foolib

.. module:: mod
   :synopsis: Module synopsis.
   :platform: UNIX

.. function:: func_in_module

.. class:: Cls

   .. method:: meth1

   .. staticmethod:: meths

   .. attribute:: attr

.. explicit class given
.. method:: Cls.meth2

.. explicit module given
.. exception:: Error(arg1, arg2)
   :module: errmod

.. data:: var


.. currentmodule:: None

.. function:: func_without_module2() -> annotation

.. class:: TimeInt

.. class:: Time(hour, minute, isdst)

   :param hour: The year.
   :type hour: TimeInt
   :param TimeInt minute: The minute.
   :param isdst: whether it's DST
   :type isdst: * some complex
                * expression
   :returns: a new :class:`Time` instance
   :rtype: :class:`Time`
   :raises ValueError: if the values are out of range
   :ivar int hour: like *hour*
   :ivar minute: like *minute*
   :vartype minute: int


C items
=======

.. c:function:: Sphinx_DoSomething()

.. c:member:: SphinxStruct.member

.. c:macro:: SPHINX_USE_PYTHON

.. c:type:: SphinxType

.. c:var:: sphinx_global


Old C items (from oldcmarkup ext)
---------------------------------

.. cfunction:: Sphinx_Func()

Refer to :cfunc:`Sphinx_Func`.


Javascript items
================

.. js:function:: foo()

.. js:data:: bar

.. documenting the method of any object
.. js:function:: bar.baz(href, callback[, errback])

   :param string href: The location of the resource.
   :param callback: Get's called with the data returned by the resource.
   :throws InvalidHref: If the `href` is invalid.
   :returns: `undefined`

.. js:attribute:: bar.spam

References
==========

Referencing :class:`mod.Cls` or :Class:`mod.Cls` should be the same.

With target: :c:func:`Sphinx_DoSomething()` (parentheses are handled),
:c:member:`SphinxStruct.member`, :c:macro:`SPHINX_USE_PYTHON`,
:c:type:`SphinxType *` (pointer is handled), :c:data:`sphinx_global`.

Without target: :c:func:`CFunction`. :c:func:`!malloc`.

:js:func:`foo()`
:js:func:`foo`

:js:data:`bar`
:js:func:`bar.baz()`
:js:func:`bar.baz`
:js:func:`~bar.baz()`

:js:attr:`bar.baz`


Others
======

.. envvar:: HOME

.. program:: python

.. cmdoption:: -c command

.. program:: perl

.. cmdoption:: -c


User markup
===========

.. userdesc:: myobj:parameter

   Description of userdesc.


Referencing :userdescrole:`myobj`.
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.