From: <da...@us...> - 2003-08-06 14:09:58
|
Update of /cvsroot/binaryphp/binaryphp In directory sc8-pr-cvs1:/tmp/cvs-serv27671 Modified Files: php_var.cpp tokenflow.php Log Message: Fixed irc bot, php_var.cpp, substr()... Index: php_var.cpp =================================================================== RCS file: /cvsroot/binaryphp/binaryphp/php_var.cpp,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** php_var.cpp 5 Aug 2003 23:25:55 -0000 1.24 --- php_var.cpp 6 Aug 2003 14:09:55 -0000 1.25 *************** *** 36,40 **** container = str; type = PHP_STRING; - cout << "Bleh!" << endl; } php_var(double i) --- 36,39 ---- *************** *** 325,334 **** return false; } ! bool operator==(php_var var) { ! if(container.compare(var.container) == 0) return true; return false; } int operator++(int i) { --- 324,337 ---- return false; } ! bool operator==(const php_var& var) { ! if(this->container.compare(var.container) == 0) return true; return false; } + bool operator==(string cmp) + { + return container == cmp; + } int operator++(int i) { *************** *** 396,403 **** } } ! void operator-(php_var i) { ! if(type == PHP_INT) ! container = doublestring(atof(container.c_str()) - atof(i.container.c_str())); } friend ostream &operator<<( ostream &out, const php_var &var ); --- 399,408 ---- } } ! php_var operator-(php_var i) { ! type = PHP_INT; ! i.type = PHP_INT; ! *this -= i; ! return *this; } friend ostream &operator<<( ostream &out, const php_var &var ); *************** *** 430,437 **** { return(v < i); - } - php_var operator-(php_var l, php_var r) - { - return (php_var)((int) l - (int) r); } float operator/(php_var &l, php_var &r) --- 435,438 ---- Index: tokenflow.php =================================================================== RCS file: /cvsroot/binaryphp/binaryphp/tokenflow.php,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** tokenflow.php 5 Aug 2003 23:25:55 -0000 1.49 --- tokenflow.php 6 Aug 2003 14:09:55 -0000 1.50 *************** *** 397,411 **** switch($token) { - case T_STRING: - if(strtolower($data) == 'true' || strtolower($data) == 'false' || strtolower($data) == 'null') - $param = '(php_var) ' . strtolower($data); - elseif($tokenizer->tokens[$i + 1] != '(') - list($param, $i) = $this->parse_statement($tokenizer, $i); - else - list($param, $i) = $this->parse_function($tokenizer, $i); - if($tokenizer->tokens[$token_][0] == T_ARRAY && count($parameters) % 2 == 0 && (is_array($tokenizer->tokens[$i + 1]) && $tokenizer->tokens[$i + 1][1] != '=>')) - $parameters[] = -1; - $parameters[] = $param; - break; case '(': list($param, $i) = $this->parse_statement($tokenizer, $i); --- 397,400 ---- *************** *** 414,417 **** --- 403,408 ---- $parameters[] = $param; break; + case T_STRING: + case '-': case T_CONSTANT_ENCAPSED_STRING: case T_DEC: *************** *** 549,558 **** break; } ! if(in_array(substr($data_, 1), $this->scope[$this->curfunction]) || $this->inclass == true) $code .= '_' . substr($data_, 1); else { - if(DEBUG) - echo "\t", $data_, "\n"; $code .= 'php_var _' . substr($data_, 1); $this->scope[$this->curfunction][] = substr($data_, 1); --- 540,547 ---- break; } ! if(in_array(substr($data_, 1), $this->scope[$this->curfunction])) $code .= '_' . substr($data_, 1); else { $code .= 'php_var _' . substr($data_, 1); $this->scope[$this->curfunction][] = substr($data_, 1); *************** *** 599,605 **** if($inconcat == true && $inbrace == false) $code .= '(string)(const char*)'; else ! $code .= '(php_var)'; ! $code .= '"' . str_replace('"', '\\"', substr($data_, 1, -1) ). '"'; break; case T_DNUMBER: --- 588,595 ---- if($inconcat == true && $inbrace == false) $code .= '(string)(const char*)'; + if(is_array($tokenizer->tokens[$i - 1]) && $tokenizer->tokens[$i - 1][0] == T_IS_EQUAL) + $code .= '(string) "' . str_replace('"', '\\"', substr($data_, 1, -1) ). '"'; else ! $code .= '(php_var)' . '"' . str_replace('"', '\\"', substr($data_, 1, -1) ). '"'; break; case T_DNUMBER: *************** *** 609,613 **** if($inconcat == true && $inbrace == false) $code .= '(string)(const char*)'; ! $code .= '(php_var)' . $data_; break; case T_DEC: --- 599,606 ---- if($inconcat == true && $inbrace == false) $code .= '(string)(const char*)'; ! if(is_array($tokenizer->tokens[$i - 1]) && $tokenizer->tokens[$i - 1][0] == T_IS_EQUAL) ! $code .= '(string)' . $data_; ! else ! $code .= '(php_var)' . $data_; break; case T_DEC: |