Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Simple_declaration_reader Class Reference

#include <annotator_i.h>

Inheritance diagram for Simple_declaration_reader:

Inheritance graph
[legend]
Collaboration diagram for Simple_declaration_reader:

Collaboration graph
[legend]
List of all members.

Public Methods

 Simple_declaration_reader (Abstract_scope *scope, Source *source, Annotator *annotator)
 Simple_declaration_reader (Abstract_scope *scope, Source *source, Arg_vec *args, Ptree *func_defn)
void parse_specifiers (Ptree *tree)
void declare_variable (Type type, Ptree *name, Ptree *initializer, Ptree *bitsize)

Private Attributes

Storage_class_specifier storage
Function_specifier_set func
Source * source
Ptree * func_defn
Annotator * annotator

Constructor & Destructor Documentation

Simple_declaration_reader::Simple_declaration_reader (  Abstract_scope *    scope,
Source *    source,
Annotator *    annotator
)  [inline]
 

Definition at line 31 of file annotator_i.h.

References func, s_None, and storage.

Simple_declaration_reader::Simple_declaration_reader (  Abstract_scope *    scope,
Source *    source,
Arg_vec *    args,
Ptree *    func_defn
)  [inline]
 

Definition at line 36 of file annotator_i.h.

References Declaration_reader::Arg_vec, func, s_None, and storage.


Member Function Documentation

void Simple_declaration_reader::declare_variable (  Type    type,
Ptree *    name,
Ptree *    initializer,
Ptree *    bitsize
)  [virtual]
 

Implements Declaration_reader.

Definition at line 46 of file annotator.cc.

References Abstract_scope::add_function_decl(), Abstract_scope::add_function_implementation(), Annotator::add_output(), Function_type_maker::add_parameter(), Abstract_scope::add_variable(), Block_scope::add_variable(), annotator, Declaration_reader::Arg_vec, Ptree::Car(), compile_error(), Type::copy_qualifiers(), Ptree::Eq(), f_Abstract, func, func_defn, Function_specifier_set, Declaration_reader::get_args(), Type::get_human_readable_type(), Symbol_name::get_kind(), Type::get_kind(), Symbol_name::get_name(), Type::get_num_function_args(), Abstract_scope::get_parent(), Type::get_return_type(), Declaration_reader::get_scope(), Symbol_name::get_type(), Symbol_name::is_template(), Type::is_void(), Symbol_name::k_Alloc, Symbol_name::k_Constructor, Symbol_name::k_Conversion, Symbol_name::k_Destructor, Type::k_Function, Symbol_name::k_Normal, Symbol_name::k_Operator, Type::k_Reference, make_declaration(), Function_type_maker::make_function_type(), Type::make_pointer_type(), s_Extern, s_None, s_Parameter, s_Static, Ptree::Second(), storage, and Storage_class_specifier.

void Simple_declaration_reader::parse_specifiers (  Ptree *    tree ) 
 

Definition at line 38 of file annotator.cc.

References func, and storage.

Referenced by Annotator::visit_function(), and Annotator::visit_name_declaration().


Member Data Documentation

Annotator* Simple_declaration_reader::annotator [private]
 

Definition at line 28 of file annotator_i.h.

Referenced by declare_variable().

Function_specifier_set Simple_declaration_reader::func [private]
 

Definition at line 25 of file annotator_i.h.

Referenced by declare_variable(), parse_specifiers(), and Simple_declaration_reader().

Ptree* Simple_declaration_reader::func_defn [private]
 

Definition at line 27 of file annotator_i.h.

Referenced by declare_variable().

Source* Simple_declaration_reader::source [private]
 

Definition at line 26 of file annotator_i.h.

Storage_class_specifier Simple_declaration_reader::storage [private]
 

Definition at line 24 of file annotator_i.h.

Referenced by declare_variable(), parse_specifiers(), and Simple_declaration_reader().


The documentation for this class was generated from the following files:
Generated on Mon Feb 10 17:36:39 2003 for VFiasco Semantics Compiler by doxygen1.2.15