/* A block represents a function - code & data. */ #ifndef BLOCK_H #define BLOCK_H struct Block{ Block( Block *parent ); ~Block(); void genCode( TNode *t ){ code.push_back( t ); } void genData( TNode *t ){ data.push_back( t ); } void generate( Codegen *gen ); private: Block *parent; vector children; vector code; vector data; }; #endif