# typedef Function

#### package haxe.macro

#### import haxe.macro.Expr

Available on all platforms

Represents a function in the AST.

### Properties

###

`args:Array<FunctionArg>`

A list of function arguments.

###

`expr:Null<Expr>`

The expression of the function body, if available.

###

`params:Null<Array<TypeParamDecl>>`

An optional list of function parameter type declarations.

###

`ret:Null<ComplexType>`

The return type-hint of the function, if available.