]> git.saurik.com Git - cycript.git/blobdiff - Code.hpp
Automatically generate FFI bridges using libclang.
[cycript.git] / Code.hpp
index f6b331265e9cb78996723c58c7b781f174c98cb2..15a5ffba4d94f10b9665b9a3ce198342534a3b77 100644 (file)
--- a/Code.hpp
+++ b/Code.hpp
 #include "String.hpp"
 
 class CYStream :
-    public std::istream
+    public std::streambuf
 {
-  private:
-    class CYBuffer :
-        public std::streambuf
-    {
-      public:
-        CYBuffer(const char *start, const char *end) {
-            setg(const_cast<char *>(start), const_cast<char *>(start), const_cast<char *>(end));
-        }
-    } buffer_;
-
   public:
-    CYStream(const char *start, const char *end) :
-        std::istream(&buffer_),
-        buffer_(start, end)
-    {
+    CYStream(const char *start, const char *end) {
+        setg(const_cast<char *>(start), const_cast<char *>(start), const_cast<char *>(end));
     }
 };
 
-CYUTF8String CYPoolCode(CYPool &pool, std::istream &stream);
+CYUTF8String CYPoolCode(CYPool &pool, std::streambuf &stream);
+CYUTF8String CYPoolCode(CYPool &pool, CYUTF8String code);
 
 #endif//CODE_HPP