Flow_ast.Function
module RestParam : sig ... end
module Param : sig ... end
module ThisParam : sig ... end
module Params : sig ... end
type ('M, 'T) t = {
id : ('M, 'T) Identifier.t option;
params : ('M, 'T) Params.t;
body : ('M, 'T) body;
async : bool;
generator : bool;
predicate : ('M, 'T) Type.Predicate.t option;
return : ('M, 'T) Type.annotation_or_hint;
tparams : ('M, 'T) Type.TypeParams.t option;
comments : ('M, unit) Syntax.t option;
sig_loc : 'M;
}
and ('M, 'T) body =
| BodyBlock of 'M * ('M, 'T) Statement.Block.t
| BodyExpression of ('M, 'T) Expression.t