X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/f2f0d1d14705a8dc96cb6787ff1e1d170efabc90..c44063e0c2da92d76816f163c34caa8cc3e710b7:/ObjectiveC/Syntax.hpp diff --git a/ObjectiveC/Syntax.hpp b/ObjectiveC/Syntax.hpp index ec06425..580ea3a 100644 --- a/ObjectiveC/Syntax.hpp +++ b/ObjectiveC/Syntax.hpp @@ -1,5 +1,5 @@ /* Cycript - Optimizing JavaScript Compiler/Runtime - * Copyright (C) 2009-2010 Jay Freeman (saurik) + * Copyright (C) 2009-2012 Jay Freeman (saurik) */ /* GNU Lesser General Public License, Version 3 {{{ */ @@ -77,6 +77,16 @@ struct CYSelector : struct CYField : CYNext { + CYExpression *type_; + CYIdentifier *name_; + + CYField(CYExpression *type, CYIdentifier *name, CYField *next = NULL) : + CYNext(next), + type_(type), + name_(name) + { + } + CYStatement *Replace(CYContext &context) const; void Output(CYOutput &out) const; }; @@ -98,6 +108,7 @@ struct CYMessageParameter : CYFunctionParameter *Parameters(CYContext &context) const; CYSelector *Selector(CYContext &context) const; CYSelectorPart *SelectorPart(CYContext &context) const; + CYExpression *TypeSignature(CYContext &context) const; }; struct CYMessage : @@ -118,6 +129,8 @@ struct CYMessage : CYStatement *Replace(CYContext &context, bool replace) const; void Output(CYOutput &out, bool replace) const; + + CYExpression *TypeSignature(CYContext &context) const; }; struct CYProtocol :