class_method ::=
{ method_qualifier } task_declaration
| { method_qualifier } function_declaration
| extern
{ method_qualifier } method_prototype
| class_constructor_declaration
extern_method_declaration ::=
function [ lifetime ] class_identifier
:: function_body_declaration
| task
[ lifetime ] class_identifier :: task_body_declaration
class_constructor_declaration ::=
function new ( tf_port_list
) ;
{ block_item_declaration }
[ super . new [ ( list_of_arguments ) ] ; ]
{ function_statement_or_null }
endfunction [ : new ]