X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fstructure%2FSGExpression.cxx;h=2633e311fdd7a646688e021d1ed7d53fb20fdc3d;hb=f41b18f0649a50e179ba41383f4061e1878c4d4c;hp=b14a5a50190568615947f92aa6f8c508514cb5bc;hpb=92074f0d3c29ed5d064db0c943cf88760c930e23;p=simgear.git diff --git a/simgear/structure/SGExpression.cxx b/simgear/structure/SGExpression.cxx index b14a5a50..2633e311 100644 --- a/simgear/structure/SGExpression.cxx +++ b/simgear/structure/SGExpression.cxx @@ -27,7 +27,6 @@ #include "Singleton.hxx" #include -#include #include #include #include @@ -370,7 +369,7 @@ SGReadExpression(SGPropertyNode *inputRoot, const SGPropertyNode *expression) SG_LOG(SG_IO, SG_ALERT, "Cannot read \"" << name << "\" expression: no input found"); return 0; } - + SGSharedPtr > inputExpression; inputExpression = SGReadExpression(inputRoot, inputNode); if (!inputExpression) { @@ -866,24 +865,7 @@ Expression* logicopParser(const SGPropertyNode* exp, Parser* parser) ExpParserRegistrar andRegistrar("and", logicopParser); ExpParserRegistrar orRegistrar("or", logicopParser); -Expression* notLogicopParser(const SGPropertyNode* exp, Parser* parser) -{ - using namespace boost; - vector children; - parser->readChildren(exp, children); - vector::iterator notBool = - find_if(children.begin(), children.end(), - boost::bind(&Expression::getType, _1) != BOOL); - if (notBool != children.end() || children.size() != 1) - throw("non boolean operand to not expression"); - NotExpression *expr = new NotExpression; - expr->setOperand(static_cast< ::SGExpression*>(children[0])); - return expr; -} - -ExpParserRegistrar notRegistrar("not", notLogicopParser); - -int BindingLayout::addBinding(const string& name, Type type) +size_t BindingLayout::addBinding(const string& name, Type type) { //XXX error checkint vector::iterator itr @@ -891,7 +873,7 @@ int BindingLayout::addBinding(const string& name, Type type) boost::bind(&VariableBinding::name, _1) == name); if (itr != bindings.end()) return itr->location; - int result = bindings.size(); + size_t result = bindings.size(); bindings.push_back(VariableBinding(name, type, bindings.size())); return result; }