internal static bool Compare(string x, string y, RelationOperator op) { Fx.Assert(null != x && null != y, ""); switch (op) { default: Fx.Assert("Invalid RelationOperator"); break; case RelationOperator.Eq: return(QueryValueModel.Equals(x, y)); case RelationOperator.Ge: case RelationOperator.Gt: case RelationOperator.Le: case RelationOperator.Lt: return(QueryValueModel.Compare(QueryValueModel.Double(x), QueryValueModel.Double(y), op)); case RelationOperator.Ne: return(x.Length != y.Length || 0 != string.CompareOrdinal(x, y)); } return(false); }
internal double NumberValue() { return(QueryValueModel.Double(this.StringValue())); }
internal static bool Equals(double x, string y) { return(x == QueryValueModel.Double(y)); }
internal static bool Compare(string x, double y, RelationOperator op) { Fx.Assert(null != x, ""); return(QueryValueModel.Compare(QueryValueModel.Double(x), y, op)); }
internal static bool Compare(double x, string y, RelationOperator op) { Fx.Assert(null != y, ""); return(QueryValueModel.Compare(x, QueryValueModel.Double(y), op)); }
internal static double Double(XPathNodeIterator iterator) { Fx.Assert(null != iterator, ""); return(QueryValueModel.Double(QueryValueModel.String(iterator))); }
internal static double Double(NodeSequence sequence) { Fx.Assert(null != sequence, ""); return(QueryValueModel.Double(sequence.StringValue())); }