mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Revert "Move BinPAC, bifcl, af_packet, and gen_zam submodules into main zeek repo"
This commit is contained in:
parent
a10a70994e
commit
e64ec54172
146 changed files with 50 additions and 20635 deletions
|
@ -1,79 +0,0 @@
|
|||
// See the file "COPYING" in the main distribution directory for copyright.
|
||||
|
||||
#ifndef pac_cclass_h
|
||||
#define pac_cclass_h
|
||||
|
||||
class CClass;
|
||||
class CClassMember;
|
||||
class CClassMethod;
|
||||
class CType;
|
||||
class CVariable;
|
||||
|
||||
typedef vector<CClassMember*> CClassMemberList;
|
||||
typedef vector<CClassMethod*> CClassMethodList;
|
||||
typedef vector<CVariable*> CVariableList;
|
||||
|
||||
#include "pac_common.h"
|
||||
|
||||
// Represents a C++ class.
|
||||
//
|
||||
// For now we adopt a simple model:
|
||||
//
|
||||
// 1. All members have a protected member variable "name_" and a
|
||||
// public constant access method "name()".
|
||||
//
|
||||
// 2. All methods are public.
|
||||
//
|
||||
// 3. We do not check repeated names.
|
||||
|
||||
class CClass {
|
||||
public:
|
||||
CClass(const string& class_name);
|
||||
|
||||
void AddMember(CClassMember* member);
|
||||
void AddMethod(CClassMember* method);
|
||||
|
||||
void GenForwardDeclaration(Output* out_h);
|
||||
void GenCode(Output* out_h, Output* out_cc);
|
||||
|
||||
protected:
|
||||
string class_name_;
|
||||
CClassMemberList* members_;
|
||||
CClassMethodList* methods_;
|
||||
};
|
||||
|
||||
class CVariable {
|
||||
public:
|
||||
CClassMember(const string& name, CType* type);
|
||||
|
||||
string name() const { return name_; }
|
||||
CType* type() const { return type_; }
|
||||
|
||||
protected:
|
||||
string name_;
|
||||
CType* type_;
|
||||
};
|
||||
|
||||
class CClassMember {
|
||||
public:
|
||||
CClassMember(CVariable* var);
|
||||
void GenCode(Output* out_h, Output* out_cc);
|
||||
|
||||
string decl() const;
|
||||
|
||||
protected:
|
||||
CVariable* var_;
|
||||
};
|
||||
|
||||
class CClassMethod {
|
||||
public:
|
||||
CClassMethod(CVariable* var, CVariableList* params);
|
||||
|
||||
string decl() const;
|
||||
|
||||
protected:
|
||||
CVariable* var_;
|
||||
CVariableList* params_;
|
||||
};
|
||||
|
||||
#endif // pac_cclass_h
|
Loading…
Add table
Add a link
Reference in a new issue