diff options
author | Ash Wolf <ninji@wuffs.org> | 2022-12-29 12:32:55 +0000 |
---|---|---|
committer | Ash Wolf <ninji@wuffs.org> | 2022-12-29 12:32:55 +0000 |
commit | fcfbafff31869ed808bff0639532db1828660e92 (patch) | |
tree | 7425b346b031c4cb47a06250b3f6f950374d44ae /includes/compiler/CObjC.h | |
parent | bc1321735c15104ffad195e1509cab5f3a044260 (diff) | |
download | MWCC-fcfbafff31869ed808bff0639532db1828660e92.tar.gz MWCC-fcfbafff31869ed808bff0639532db1828660e92.zip |
dump lots more code
Diffstat (limited to 'includes/compiler/CObjC.h')
-rw-r--r-- | includes/compiler/CObjC.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/includes/compiler/CObjC.h b/includes/compiler/CObjC.h index 92a4efa..cd7686d 100644 --- a/includes/compiler/CObjC.h +++ b/includes/compiler/CObjC.h @@ -2,5 +2,40 @@ #define COMPILER_COBJC_H #include "compiler/common.h" +#include "compiler/objc.h" + +extern Type *cobjc_type_class; +extern Type *cobjc_type_id; +extern Type *cobjc_type_sel; +extern TypeClass *cobjc_currentclass; +extern ObjCSelector **cobjc_selhashtable; +extern BClassList *cobjc_classdefs; +extern ObjCProtocol *cobjc_protocols; +extern long cobjc_selrefcount; +extern long cobjc_classrefcount; +extern long cobjc_stringcount; +extern Boolean cobjc_encodemethod; + +extern void CObjC_Setup(void); +extern void CObjC_Cleanup(void); +extern void CObjC_GenerateModule(void); +extern Type *CObjC_GetObjCType_id(Boolean flag); +extern Boolean CObjC_IsType_id(Type *type); +extern Boolean CObjC_IsCompatibleType(Type *a, Type *b); +extern void CObjC_TranslateSelectorToken(void); +extern void CObjC_ParseDefs(TypeStruct *tstruct); +extern Type *CObjC_ParseID(void); +extern Type *CObjC_ParseTypeProtocol(TypeClass *tclass); +extern void CObjC_ParseInterface(void); +extern void CObjC_ParseImplementation(void); +extern void CObjC_ParseProtocol(void); +extern void CObjC_ParseClassDeclaration(void); +extern void *CObjC_ParseIdentifier(); +extern ENode *CObjC_MakeSendMsgExpr(ENode *objexpr, TypeClass *tclass, ObjCNamedArg *namedArgs, ENodeList *unnamedArgs, UInt8 calltype, Boolean isSuper); +extern ENode *CObjC_ParseMessageExpression(void); +extern ENode *CObjC_ParseEncodeExpression(void); +extern ENode *CObjC_ParseAtExpression(void); +extern ENode *CObjC_ParseProtocolExpression(void); +extern ENode *CObjC_ParseSelectorExpression(void); #endif |