1 //------------------------------------------------------------------------------
2 // <copyright file="QilInvokeEarlyBound.cs" company="Microsoft">
3 // Copyright (c) Microsoft Corporation. All rights reserved.
5 // <owner current="true" primary="true">Microsoft</owner>
6 //------------------------------------------------------------------------------
8 using System
.Diagnostics
;
9 using System
.Reflection
;
11 namespace System
.Xml
.Xsl
.Qil
{
14 /// A function invocation node which reperesents a call to an early bound Clr function.
16 internal class QilInvokeEarlyBound
: QilTernary
{
18 //-----------------------------------------------
20 //-----------------------------------------------
23 /// Construct a new node
25 /// <param name="method">QilLiteral containing the Clr MethodInfo for the early bound function</param>
26 public QilInvokeEarlyBound(QilNodeType nodeType
, QilNode name
, QilNode method
, QilNode arguments
, XmlQueryType resultType
)
27 : base(nodeType
, name
, method
, arguments
) {
28 this.xmlType
= resultType
;
32 //-----------------------------------------------
33 // QilInvokeEarlyBound methods
34 //-----------------------------------------------
37 get { return (QilName) Left; }
41 public MethodInfo ClrMethod
{
42 get { return (MethodInfo) ((QilLiteral) Center).Value; }
43 set { ((QilLiteral) Center).Value = value; }
46 public QilList Arguments
{
47 get { return (QilList) Right; }
48 set { Right = value; }