solidity-antlr4
Version:
Solidity Lang Lexer and Parser by official ANTLR4 grammar
27 lines (26 loc) • 1.5 kB
TypeScript
import { BaseNode } from '../base';
import { ConstructorDefinitionContext, FallbackFunctionDefinitionContext, FunctionDefinitionContext, FunctionTypeNameContext, ReceiveFunctionDefinitionContext, SolidityParserVisitor } from '../../antlr4';
import { Identifier } from '../expression';
import { StateMutabilityKind } from './state-mutability';
import { VisibilityKind } from './visibility';
import { ModifierInvocation, OverrideSpecifier, ParameterList } from '../meta';
import { Block } from '../statement';
type FunctionKind = 'function' | 'constructor' | 'receive' | 'fallback';
export declare class BaseFunctionDefinition extends BaseNode {
type: any;
name: Identifier | null;
functionKind: FunctionKind;
override: OverrideSpecifier | null;
virtual: boolean;
visibility: VisibilityKind | null;
stateMutability: StateMutabilityKind | null;
modifiers: ModifierInvocation[] | null;
parameters: ParameterList | null;
returnParameters: ParameterList | null;
body: Block | null;
constructor(ctx: FunctionDefinitionContext | FunctionTypeNameContext | ConstructorDefinitionContext | FallbackFunctionDefinitionContext | ReceiveFunctionDefinitionContext, visitor: SolidityParserVisitor<any>);
}
export declare class FunctionDefinition extends BaseFunctionDefinition {
type: "FunctionDefinition";
}
export { FunctionDefinition as ConstructorDefinition, FunctionDefinition as FallbackFunctionDefinition, FunctionDefinition as ReceiveFunctionDefinition, };