summaryrefslogtreecommitdiff
path: root/project2/ice/slice2Type.h
blob: e2b94fcb0c96a0d8f57f718c8913652e0abc781e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef ICEBUILDPRESENTER_H
#define ICEBUILDPRESENTER_H

#include <Slice/Parser.h>

class Slice2Type : public Slice::ParserVisitor {
	public:
		Slice2Type(FILE * c);
    virtual bool visitModuleStart(const Slice::ModulePtr & m);
    virtual void visitModuleEnd(const Slice::ModulePtr & m);
    virtual void visitClassDecl(const Slice::ClassDeclPtr&);
    virtual bool visitExceptionStart(const Slice::ExceptionPtr&);
    virtual bool visitClassDefStart(const Slice::ClassDefPtr&);
    virtual bool visitStructStart(const Slice::StructPtr&);

	private:
		void membersToVariables(const Slice::DataMemberList &, const std::string &) const;
		void membersToColumns(const Slice::DataMemberList &) const;
		FILE * code;
		std::string module;
};

#endif