e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
34 lines
1.3 KiB
C#
34 lines
1.3 KiB
C#
//------------------------------------------------------------------------------
|
|
// <copyright file="IXPathEnvironment.cs" company="Microsoft">
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// </copyright>
|
|
// <owner current="true" primary="true">sdub</owner>
|
|
//------------------------------------------------------------------------------
|
|
using System.Collections.Generic;
|
|
using System.Xml.Xsl.Qil;
|
|
|
|
namespace System.Xml.Xsl.XPath {
|
|
|
|
// <spec>http://www.w3.org/TR/xslt20/#dt-focus</spec>
|
|
internal interface IFocus {
|
|
// The context item: the item currently being processed
|
|
QilNode GetCurrent();
|
|
|
|
// The context position: the position of the context item within the sequence of items
|
|
// currently being processed
|
|
QilNode GetPosition();
|
|
|
|
// The context size: the number of items in the sequence of items currently being processed
|
|
QilNode GetLast();
|
|
}
|
|
|
|
internal interface IXPathEnvironment : IFocus {
|
|
XPathQilFactory Factory { get; }
|
|
|
|
// Resolution of variables, functions, and prefixes
|
|
QilNode ResolveVariable(string prefix, string name);
|
|
QilNode ResolveFunction(string prefix, string name, IList<QilNode> args, IFocus env);
|
|
string ResolvePrefix (string prefix);
|
|
}
|
|
}
|