//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// Microsoft
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Reflection;
namespace System.Xml.Xsl.Qil {
///
/// A function invocation node which reperesents a call to an early bound Clr function.
///
internal class QilInvokeEarlyBound : QilTernary {
//-----------------------------------------------
// Constructor
//-----------------------------------------------
///
/// Construct a new node
///
/// QilLiteral containing the Clr MethodInfo for the early bound function
public QilInvokeEarlyBound(QilNodeType nodeType, QilNode name, QilNode method, QilNode arguments, XmlQueryType resultType)
: base(nodeType, name, method, arguments) {
this.xmlType = resultType;
}
//-----------------------------------------------
// QilInvokeEarlyBound methods
//-----------------------------------------------
public QilName Name {
get { return (QilName) Left; }
set { Left = value; }
}
public MethodInfo ClrMethod {
get { return (MethodInfo) ((QilLiteral) Center).Value; }
set { ((QilLiteral) Center).Value = value; }
}
public QilList Arguments {
get { return (QilList) Right; }
set { Right = value; }
}
}
}