X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/d9c911529b1480684bb8b6280410f2d09c8525a1..63db22e50caddb75792b67534547cb3ac7ccff61:/Library.cpp?ds=sidebyside diff --git a/Library.cpp b/Library.cpp index b04f2ca..e8e70d6 100644 --- a/Library.cpp +++ b/Library.cpp @@ -34,14 +34,12 @@ #include #include +#include "Driver.hpp" #include "Error.hpp" #include "Execute.hpp" #include "Parser.hpp" #include "String.hpp" -#include "Cycript.tab.hh" -#include "Driver.hpp" - #include "ConvertUTF.h" template <> @@ -219,19 +217,17 @@ double CYCastDouble(const char *value) { CYUTF8String CYPoolCode(CYPool &pool, std::istream &stream) { CYLocalPool local; - CYDriver driver(stream); - - cy::parser parser(driver); - _assert(parser.parse() == 0); + CYDriver driver(local, stream); + _assert(!driver.Parse()); _assert(driver.errors_.empty()); CYOptions options; CYContext context(options); - driver.program_->Replace(context); + driver.script_->Replace(context); std::stringbuf str; CYOutput out(str, options); - out << *driver.program_; + out << *driver.script_; return $pool.strdup(str.str().c_str()); }