]> git.saurik.com Git - cycript.git/blobdiff - ObjectiveC/Syntax.hpp
Bridge NSNumber/NSCFBoolean to JS Number/Boolean.
[cycript.git] / ObjectiveC / Syntax.hpp
index 618a25e87659e9bf7e574eb228449e9b2ac99b13..4c15344da5a4265c5889a51f370957d1ac1d5e0f 100644 (file)
 
 #include "Parser.hpp"
 
+struct CYInstanceLiteral :
+    CYExpression
+{
+    CYNumber *number_;
+
+    CYInstanceLiteral(CYNumber *number) :
+        number_(number)
+    {
+    }
+
+    CYPrecedence(1)
+
+    virtual CYExpression *Replace(CYContext &context);
+    virtual void Output(CYOutput &out, CYFlags flags) const;
+};
+
 struct CYObjCBlock :
     CYExpression
 {
@@ -169,9 +185,32 @@ struct CYProtocol :
     void Output(CYOutput &out) const;
 };
 
+struct CYModule :
+    CYNext<CYModule>,
+    CYThing
+{
+    CYWord *part_;
+
+    CYModule(CYWord *part, CYModule *next = NULL) :
+        CYNext<CYModule>(next),
+        part_(part)
+    {
+    }
+
+    CYString *Replace(CYContext &context, const char *separator) const;
+    void Output(CYOutput &out) const;
+};
+
 struct CYImport :
     CYStatement
 {
+    CYModule *module_;
+
+    CYImport(CYModule *module) :
+        module_(module)
+    {
+    }
+
     virtual CYStatement *Replace(CYContext &context);
     virtual void Output(CYOutput &out, CYFlags flags) const;
 };