blob: 14981eeea5773548b8303c4e48084078aefa91f2 [file] [log] [blame]
Andreas Huberc9410c72016-07-28 12:18:40 -07001#ifndef INTERFACE_H_
2
3#define INTERFACE_H_
4
5#include "Scope.h"
6
7#include <utils/Vector.h>
8
9namespace android {
10
11struct Method;
12
13struct Interface : public Scope {
14 Interface(const char *name, Type *super);
15
16 void addMethod(Method *method);
17
18 void dump(Formatter &out) const override;
19
20 const Type *superType() const;
21
22private:
23 std::string mName;
24 Type *mSuperType;
25 Vector<Method *> mMethods;
26
27 DISALLOW_COPY_AND_ASSIGN(Interface);
28};
29
30} // namespace android
31
32#endif // INTERFACE_H_
33