#pragma once #include #include class Delegate : public Procedure, public Jenga::Common::ObjectInHashmap { public: Delegate( const NamespaceScopes &namespaceScopes, const std::string &name, Procedure::Kind procKind, const char *paramStr, const Type &returnType, int nowLine ); Delegate() { } virtual const std::string &GetKeyName() const { return GetName(); } }; class Delegates : public Jenga::Common::Hashmap { public: void Collect( const BasicSource &source ); void GenerateSourceCode( std::string &destSource ); };