> For the complete documentation index, see [llms.txt](https://liavt.gitbook.io/styleguide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://liavt.gitbook.io/styleguide/naming/functions.md).

# Functions

Functions follow the same rules as variables, which is camelCase.

ALL functions follow this rule, even static functions or member functions.

{% tabs %}
{% tab title="C++" %}

```
class Foo {
public:
    void runNarwhal();
}

int getVersion();
```

{% endtab %}

{% tab title="Java" %}

```
public static void runsSomeWoawvering();
private int getHolesInWall();
```

{% endtab %}
{% endtabs %}

Macros follow the same rules as a [constant](/styleguide/naming/constants.md)

Functions should ALWAYS be some sort of verb.

Use getters and setters effectively to achieve this.
