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
- ToolStripItemGlyph.cs
- RawStylusInputReport.cs
- ControlPropertyNameConverter.cs
- DefinitionBase.cs
- NumberFormatInfo.cs
- CodeCatchClause.cs
- DataGridViewColumnEventArgs.cs
- DetailsViewCommandEventArgs.cs
- WsdlInspector.cs
- PolyLineSegment.cs
- CallbackWrapper.cs
- ReferenceEqualityComparer.cs
- TransformGroup.cs
- MbpInfo.cs
- SqlSupersetValidator.cs
- QuadraticBezierSegment.cs
- ToolboxItemImageConverter.cs
- CompleteWizardStep.cs
- DesignerActionVerbItem.cs
- ModelItemKeyValuePair.cs
- NetworkAddressChange.cs
- WebPartConnectionCollection.cs
- TextFindEngine.cs
- SpotLight.cs
- NonClientArea.cs
- Cursors.cs
- DataPagerFieldItem.cs
- ProtocolsConfigurationHandler.cs
- BitmapEffectrendercontext.cs
- TableCellAutomationPeer.cs
- Button.cs
- XslVisitor.cs
- HtmlShimManager.cs
- DrawingImage.cs
- BufferModesCollection.cs
- CommandCollectionEditor.cs
- PasswordTextNavigator.cs
- ReaderOutput.cs
- StatusBarPanelClickEvent.cs
- Rule.cs
- ExtentKey.cs
- HttpWriter.cs
- MetadataArtifactLoaderComposite.cs
- XsdBuildProvider.cs
- Pair.cs
- OracleRowUpdatedEventArgs.cs
- RouteParametersHelper.cs
- MappingSource.cs
- URL.cs
- UnauthorizedWebPart.cs
- Task.cs
- StreamReader.cs
- SmtpMail.cs
- FontInfo.cs
- BatchServiceHost.cs
- QueryOpeningEnumerator.cs
- XPathNodeInfoAtom.cs
- TabItemWrapperAutomationPeer.cs
- EntityParameterCollection.cs
- DataRelationCollection.cs
- BaseUriHelper.cs
- ActivationServices.cs
- ConnectionManagementSection.cs
- StreamUpdate.cs
- ExceptionHandler.cs
- UserPreferenceChangingEventArgs.cs
- DataControlLinkButton.cs
- LocalFileSettingsProvider.cs
- Psha1DerivedKeyGenerator.cs
- PropertyInfoSet.cs
- WeakRefEnumerator.cs
- TrueReadOnlyCollection.cs
- WorkflowInstanceExtensionProvider.cs
- Light.cs
- RedirectionProxy.cs
- ConnectionManagementElementCollection.cs
- StrongName.cs
- MetadataItemEmitter.cs
- PriorityQueue.cs
- Label.cs
- IdnMapping.cs
- X509RawDataKeyIdentifierClause.cs
- HttpRequestTraceRecord.cs
- CompositeDispatchFormatter.cs
- ColumnHeaderConverter.cs
- DataConnectionHelper.cs
- SettingsPropertyValueCollection.cs
- StandardOleMarshalObject.cs
- ImageCreator.cs
- StringComparer.cs
- XmlChildNodes.cs
- HandledEventArgs.cs
- FacetValueContainer.cs
- DataSourceConverter.cs
- NameSpaceEvent.cs
- OdbcHandle.cs
- HyperLink.cs
- ScriptControlDescriptor.cs
- CustomAttribute.cs
- ResolveNameEventArgs.cs