For the complete documentation index, see llms.txt. This page is also available as Markdown.

Comments (NATSPEC)

Tags

All tags are optional. The following table explains the purpose of each NatSpec tag and where it may be used. As a special case, if no tags are used then the Solidity compiler will interpret a /// or /** comment in the same way as if it were tagged with @notice.

Tag
Description
Context

@title

A title that should describe the contract/interface

contract, library, interface

@author

The name of the author

contract, library, interface

@notice

Explain to an end user what this does

contract, library, interface, function, public state variable, event

@dev

Explain to a developer any extra details

contract, library, interface, function, state variable, event

@param

Documents a parameter just like in Doxygen (must be followed by parameter name)

function, event

@return

Documents the return variables of a contract’s function

function, public state variable

@inheritdoc

Copies all missing tags from the base function (must be followed by the contract name)

function, public state variable

@custom:...

Custom tag, semantics is application-defined

everywhere

Last updated