private void ButtonPredicate_Click(object sender, RoutedEventArgs e) { var inputNav = GetResourceNavigator(); if (inputNav == null) { return; } // Don't need to cache this, it is cached in the fhir-client Hl7.FhirPath.CompiledExpression xps = null; try { xps = _compiler.Compile(textboxExpression.Text); } catch (Exception ex) { SetResults("Expression compilation error:\r\n" + ex.Message); return; } if (xps != null) { try { bool result; if (inputNav is stu3.Hl7.Fhir.ElementModel.PocoNavigator) { result = xps.Predicate(inputNav, new fp3.FhirEvaluationContext(inputNav)); } else { result = xps.Predicate(inputNav, new fp2.FhirEvaluationContext(inputNav)); } SetResults(result.ToString()); } catch (Exception ex) { SetResults("Expression evaluation error:\r\n" + ex.Message); return; } } AppendParseTree(); }
private void ButtonPredicate_Click(object sender, RoutedEventArgs e) { EvaluationContext evalContext; var inputNav = GetResourceNavigator(out evalContext); if (inputNav == null) { return; } // Don't need to cache this, it is cached in the fhir-client Hl7.FhirPath.CompiledExpression xps = null; try { xps = FhirPathProcessor._compiler.Compile(textboxExpression.Text); } catch (Exception ex) { SetResults("Expression compilation error:\r\n" + ex.Message); return; } if (xps != null) { try { AddHistoryEntry(textboxInputXML.Text, textboxExpression.Text); bool result = xps.Predicate(inputNav, evalContext); SetResults(result.ToString()); } catch (Exception ex) { SetResults("Expression evaluation error:\r\n" + ex.Message); return; } } AppendParseTree(); }