Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / XPath / Internal / Function.cs / 1 / Function.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace MS.Internal.Xml.XPath { using System; using System.Xml; using System.Xml.XPath; using System.Diagnostics; using System.Collections; internal class Function : AstNode { public enum FunctionType { FuncLast, FuncPosition, FuncCount, FuncID, FuncLocalName, FuncNameSpaceUri, FuncName, FuncString, FuncBoolean, FuncNumber, FuncTrue, FuncFalse, FuncNot, FuncConcat, FuncStartsWith, FuncContains, FuncSubstringBefore, FuncSubstringAfter, FuncSubstring, FuncStringLength, FuncNormalize, FuncTranslate, FuncLang, FuncSum, FuncFloor, FuncCeiling, FuncRound, FuncUserDefined, }; private FunctionType functionType; private ArrayList argumentList; private string name = null; private string prefix = null; public Function(FunctionType ftype, ArrayList argumentList) { this.functionType = ftype; this.argumentList = new ArrayList(argumentList); } public Function(string prefix, string name, ArrayList argumentList) { this.functionType = FunctionType.FuncUserDefined; this.prefix = prefix; this.name = name; this.argumentList = new ArrayList(argumentList); } public Function(FunctionType ftype) { this.functionType = ftype; } public Function(FunctionType ftype, AstNode arg) { functionType = ftype; argumentList = new ArrayList(); argumentList.Add(arg); } public override AstType Type { get {return AstType.Function;} } public override XPathResultType ReturnType { get { return ReturnTypes[(int) functionType]; } } public FunctionType TypeOfFunction { get { return functionType; } } public ArrayList ArgumentList { get { return argumentList; } } public string Prefix { get { return prefix; } } public string Name { get { return name; } } internal static XPathResultType[] ReturnTypes = { /* FunctionType.FuncLast */ XPathResultType.Number , /* FunctionType.FuncPosition */ XPathResultType.Number , /* FunctionType.FuncCount */ XPathResultType.Number , /* FunctionType.FuncID */ XPathResultType.NodeSet, /* FunctionType.FuncLocalName */ XPathResultType.String , /* FunctionType.FuncNameSpaceUri */ XPathResultType.String , /* FunctionType.FuncName */ XPathResultType.String , /* FunctionType.FuncString */ XPathResultType.String , /* FunctionType.FuncBoolean */ XPathResultType.Boolean, /* FunctionType.FuncNumber */ XPathResultType.Number , /* FunctionType.FuncTrue */ XPathResultType.Boolean, /* FunctionType.FuncFalse */ XPathResultType.Boolean, /* FunctionType.FuncNot */ XPathResultType.Boolean, /* FunctionType.FuncConcat */ XPathResultType.String , /* FunctionType.FuncStartsWith */ XPathResultType.Boolean, /* FunctionType.FuncContains */ XPathResultType.Boolean, /* FunctionType.FuncSubstringBefore */ XPathResultType.String , /* FunctionType.FuncSubstringAfter */ XPathResultType.String , /* FunctionType.FuncSubstring */ XPathResultType.String , /* FunctionType.FuncStringLength */ XPathResultType.Number , /* FunctionType.FuncNormalize */ XPathResultType.String , /* FunctionType.FuncTranslate */ XPathResultType.String , /* FunctionType.FuncLang */ XPathResultType.Boolean, /* FunctionType.FuncSum */ XPathResultType.Number , /* FunctionType.FuncFloor */ XPathResultType.Number , /* FunctionType.FuncCeiling */ XPathResultType.Number , /* FunctionType.FuncRound */ XPathResultType.Number , /* FunctionType.FuncUserDefined */ XPathResultType.Any }; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AddInAttribute.cs
- InvokeGenerator.cs
- ComponentCodeDomSerializer.cs
- Translator.cs
- Timer.cs
- PropertyGridCommands.cs
- FrameworkObject.cs
- ReceiveMessageRecord.cs
- MergeLocalizationDirectives.cs
- ManifestResourceInfo.cs
- InternalCache.cs
- TabControlEvent.cs
- Point3DCollection.cs
- UnsafeNativeMethods.cs
- PrintDialog.cs
- EventLogConfiguration.cs
- XmlSerializerNamespaces.cs
- OpenTypeLayoutCache.cs
- StyleCollectionEditor.cs
- WebSysDescriptionAttribute.cs
- ThreadInterruptedException.cs
- GradientBrush.cs
- EntitySqlQueryCacheKey.cs
- AppliedDeviceFiltersDialog.cs
- DesignerSerializationVisibilityAttribute.cs
- DisplayNameAttribute.cs
- ThreadAbortException.cs
- TokenBasedSetEnumerator.cs
- HtmlControl.cs
- X509CertificateStore.cs
- SafeNativeMethods.cs
- JsonCollectionDataContract.cs
- Token.cs
- StateManagedCollection.cs
- XmlSecureResolver.cs
- AssociationType.cs
- CapabilitiesState.cs
- TrackingExtract.cs
- CommentEmitter.cs
- DBSqlParserTable.cs
- ConfigurationSectionCollection.cs
- RadioButton.cs
- CustomWebEventKey.cs
- SEHException.cs
- Switch.cs
- EdmConstants.cs
- JulianCalendar.cs
- ExecutionEngineException.cs
- BeginStoryboard.cs
- BuildProvider.cs
- WithParamAction.cs
- CorrelationResolver.cs
- ImageEditor.cs
- CryptographicAttribute.cs
- DayRenderEvent.cs
- X509Extension.cs
- DesignerImageAdapter.cs
- GridViewHeaderRowPresenter.cs
- FormatterServices.cs
- CodeGeneratorOptions.cs
- BookmarkCallbackWrapper.cs
- EditorServiceContext.cs
- KeyConstraint.cs
- SerialPort.cs
- FileClassifier.cs
- PartBasedPackageProperties.cs
- DocumentPageViewAutomationPeer.cs
- NumberSubstitution.cs
- StatusBarItemAutomationPeer.cs
- TCPListener.cs
- PhonemeConverter.cs
- CancellableEnumerable.cs
- TextElement.cs
- SQLInt32Storage.cs
- SqlProviderManifest.cs
- ButtonRenderer.cs
- RotateTransform.cs
- InternalsVisibleToAttribute.cs
- PenThreadWorker.cs
- XmlSchema.cs
- Stackframe.cs
- DataContractSerializer.cs
- ItemContainerPattern.cs
- BoolExpressionVisitors.cs
- ECDsa.cs
- WebPartConnectionCollection.cs
- ExtractedStateEntry.cs
- UserControl.cs
- WebPartConnectionsCancelVerb.cs
- MsmqReceiveParameters.cs
- CodeMethodInvokeExpression.cs
- InputManager.cs
- PopupRootAutomationPeer.cs
- Membership.cs
- EntityCommandCompilationException.cs
- TextSpanModifier.cs
- TextEditorTables.cs
- MetadataSource.cs
- RenamedEventArgs.cs
- WindowsToolbar.cs