Specific Examples Test Suite

Template Type Alias

using IsFurry = std::is_furry<T, U, N>

a type alias with three template arguments

Template Parameters
  • T: this is the first template parameter

  • U: this is the second template parameter

  • N: this is the third template parameter, it is a non-type parameter

using IsFuzzy = std::is_fuzzy<T>

a type alias with one template argument

Template Parameters
  • T: this is the template parameter

Typedef Examples

class TestClass

Public Types

typedef void *MemberTypedef

A typedef defined in a class.

typedef void (*MemberTypedefFuncPointer)(int, double)
class TypeDefTest
namespace testnamespace

Typedefs

typedef char *AnotherTypedef
file typedef.h

Typedefs

typedef TypeDefTest (*TypeDefTestFuncPtr)(void)
typedef void *(*voidFuncPtr)(float, int)
typedef void *voidPointer
typedef float *floatPointer
typedef float floatingPointNumber
typedef int TestTypedef
using TypeAlias = int

Namespaced Function Examples

void testnamespace::NamespacedClassTest::function() const = 0

namespaced class function

void testnamespace::ClassTest::function()

second namespaced class function

void testnamespace::ClassTest::anotherFunction()

second namespaced class other function

void ClassTest::function(int myParameter)

non-namespaced class function

More details in the header file.

More documentation in the impl file

void ClassTest::anotherFunction()

non-namespaced class other function

More documentation in the impl file

Extern Examples

int cache_tree_matches_traversal(struct cache_tree*, struct name_entry *ent, struct traverse_info *info)
struct cache_tree global_cache_tree

Shared cache tree instance.

Alias Example

void frob_foos(void *Frobs)

Foo frob routine.

bob this something else

Side Effects

Frobs any foos.

Return

Frobs any foos.

bob this something else

Side Effects

Frobs any foos.

Parameters
  • Frobs: any foos.

Fixed Width Font

class Out

Public Functions

Out()

Constructor for Out object

~Out()

Destructor for Out object

Function Overloads

void f(int, int)

Function which takes two int arguments.

void f(double, double)

Function which takes two double arguments.

void test::g(int, int)

Another function which takes two int arguments.

void test::g(double, double)

Another function which takes two double arguments.

void h(std::string, MyType)

Another function which takes a custom type.

Warning

doxygenfunction: Unable to resolve multiple matches for function “h” with arguments (std::string, MyOtherType) in doxygen xml output for project “functionOverload” from directory: ../../examples/specific/functionOverload/xml/. Potential matches:

- template<typename T, typename U> void h(std::string, const T m, const U n)
- template<typename T> void h(std::string, const T myType)
- void h(std::string, MyOtherType o)
- void h(std::string, MyType)
- void h(std::string, const MyType &mytype)
- void h(std::string, const int myint)
- void h(std::string, float myfloat)

Warning

doxygenfunction: Unable to resolve multiple matches for function “h” with arguments (std::string, const int) in doxygen xml output for project “functionOverload” from directory: ../../examples/specific/functionOverload/xml/. Potential matches:

- template<typename T, typename U> void h(std::string, const T m, const U n)
- template<typename T> void h(std::string, const T myType)
- void h(std::string, MyOtherType o)
- void h(std::string, MyType)
- void h(std::string, const MyType &mytype)
- void h(std::string, const int myint)
- void h(std::string, float myfloat)

Warning

doxygenfunction: Unable to resolve multiple matches for function “h” with arguments (std::string, const T, const U) in doxygen xml output for project “functionOverload” from directory: ../../examples/specific/functionOverload/xml/. Potential matches:

- template<typename T, typename U> void h(std::string, const T m, const U n)
- template<typename T> void h(std::string, const T myType)
- void h(std::string, MyOtherType o)
- void h(std::string, MyType)
- void h(std::string, const MyType &mytype)
- void h(std::string, const int myint)
- void h(std::string, float myfloat)

Program Listing

class Vector

Vector class

Vector center() const

The center of the InteractionBox in device coordinates (millimeters). This point is equidistant from all sides of the box.

Vector boxCenter = interactionBox.center();
Vector max = interactionBox.max();
Vector diff = max - boxCenter;

Return

The InteractionBox center in device coordinates.

Since

1.0

Image

class ImageClass : public Image

This is a class with an image in the description.

It renders like this:

_images/imageExample.png

Breathe & Sphinx should automatically copy the image from the doxygen output directory into the _images folder of the Sphinx output.

Array Parameter

int foo(int a[5])

My function.

int bar(int n, int a[static n])

My other function.

C Struct

struct ACStruct

Public Members

int i
struct ANestedStruct

Public Members

int i

C Union

union ACUnion

Public Members

int i

C Enum

enum GSM_BackupFormat

Backup data.

Values:

enumerator GSM_Backup_Auto = 0

Compatibility with old gboolean used instead of format.

File type is guessed for extension, non unicode format used for Gammu backup.

enumerator GSM_Backup_AutoUnicode = 1

Compatibility with old gboolean used instead of format.

File type is guessed for extension, unicode format used for Gammu backup.

enumerator GSM_Backup_LMB

LMB format, compatible with Logo manager, can store phonebooks and logos.

enumerator GSM_Backup_VCalendar

vCalendar standard, can store todo and calendar entries.

enumerator GSM_Backup_VCard

vCard standard, can store phone phonebook entries.

enumerator GSM_Backup_LDIF

LDIF (LDAP Data Interchange Format), can store phone phonebook entries.

enumerator GSM_Backup_ICS

iCalendar standard, can store todo and calendar entries.

enumerator GSM_Backup_Gammu

Gammu own format can store almost anything from phone.

This is ASCII version of the format, Unicode strings are HEX encoded. Use GSM_Backup_GammuUCS2 instead if possible.

enumerator GSM_Backup_GammuUCS2

Gammu own format can store almost anything from phone.

This is UCS2-BE version of the format.

enumerator GSM_Backup_VNote

vNote standard, can store phone notes.

C Typedef

Typedefs

typedef int (*cTypeDefTestFuncPtr)(void)

Sample typedef for a function pointer.

typedef void *(*cVoidFuncPtr)(float, int)
typedef void *cVoidPointer
typedef float *cFloatPointer
typedef float cFloatingPointNumber
typedef int cTestTypedef

Test for a simple C typedef.

C Macro

Defines

A_C_MACRO
ANOTHER_C_MACRO(name)

C++ Macro

Defines

USE_STUFF

A simple define without a value.

MAX_LENGTH

A define with a simple value.

MAX(A, B)

A define with some parameters.

Return

The maximum of A and B

Parameters
  • A: The parameter A

  • B: The parameter B

SWAP(A, B)

A define which spans multiple lines.

Multifile

template<TestClass::Enum E>
void TestTemplateFunction()

The non-type template parameter references a different file.

Interface Class

interface InterfaceClass

This is a test interface class.

Some details about the InterfaceClass interface

C++ Anonymous Entities

struct ClassWithAnonEntities

Public Types

enum [anonymous]

Values:

enumerator Enumerator

Public Members

int structMember
struct ClassWithAnonEntities::[anonymous] [anonymous]
int unionMember
union ClassWithAnonEntities::[anonymous] [anonymous]

C++ Union

union Union

Public Members

int i
struct Class
union Union

Public Members

int i

C++ Enums

Enums

enum Unscoped

Values:

enumerator UnscopedEnumerator = 42
enum ScopedStruct

Values:

enumerator Enumerator = 42
enum ScopedClass

Values:

enumerator Enumerator = 42

C++ Functions

struct Class

Public Functions

void f1() volatile const & = 0
void f2() volatile const && = 0
int f_issue_338() noexcept

Public Members

void (*f_issue_489)(struct Foo *foo, int value)

Public Static Functions

void f3()

C++ Friend Classes

struct A
struct B
struct C

Friends

friend class A
friend struct B

C++ Inherited Members

class Base
#include <cpp_inherited_members.h>

Base class.

Subclassed by A, B

Public Functions

void f_issue_356()

Base-class member function.

class A : public Base
#include <cpp_inherited_members.h>

Class A.

Public Functions

void f_issue_356()

Base-class member function.

class B : public Base
#include <cpp_inherited_members.h>

Class B.

Public Functions

void f_issue_356()

Base-class member function.

C++ Trailing Return Type

Functions

auto f_issue_441() -> Thingy*

Function that creates a thingy.