/// <summary> /// Instantiates the object under test and then executes its query function. /// </summary> /// <param name="element">The XElement to query</param> /// <returns>an IEnumerable of the results</returns> public IEnumerable <XElement> Query(XElement element) { ITransform transform = Activator.CreateInstance(this._type) as ITransform; var results = transform.Query(element); return(results as IEnumerable <XElement>); }
/// <summary> /// Works in conjunction with <see cref="AbstractDocument.FileUnits"/> to execute a query /// against each file in a SrcML document /// </summary> /// <param name="transform">The transform object with the /// see cref="ITransform.Query"/></param> /// <returns>yields each node that matches the query in /// <paramref name="transform"/></returns> public IEnumerable <XElement> QueryEachUnit(ITransform transform) { foreach (var unit in this.FileUnits) { foreach (var result in transform.Query(unit)) { yield return(result); } } }
/// <summary> /// Works in conjunction with <see cref="AbstractDocument.FileUnits"/> to execute a query against each file in a SrcML document /// </summary> /// <param name="transform">The transform object with the <see cref="ITransform.Query"/></param> /// <returns>yields each node that matches the query in <paramref name="transform"/></returns> public IEnumerable<XElement> QueryEachUnit(ITransform transform) { foreach (var unit in this.FileUnits) { foreach (var result in transform.Query(unit)) yield return result; } }