using com::sun::star::uno::Reference; using com::sun::star::xml::dom::XNode; using com::sun::star::xml::dom::XNodeList;
namespace xforms
{
PathExpression::PathExpression()
{
}
PathExpression::~PathExpression()
{
}
void PathExpression::setExpression( const OUString& rExpression )
{ // set new expression, and clear pre-computed results
ComputedExpression::setExpression( rExpression );
// check expression against regular expression to determine // whether it contains only 'simple' (i.e. static) conditions. For // now, we check whether it only contains number positions. // (TODO: Only works for names containing only ASCII letters+digits.)
mbIsSimple =
_checkExpression( "( */@?[a-zA-Z0-9:]+( *\\[ *[0-9 ]+ *\\] *)?)+" );
void PathExpression::evaluate( const EvaluationContext& rContext )
{ // for simple expression we don't need to re-bind (if we were bound before) // (we will evaluate empty expressions, since they are interpreted as ".") if( mxResult.is() && isSimpleExpression() ) return;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.