Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / Internal / Operator.cs / 1305376 / Operator.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.Globalization; internal class Operator : AstNode { public enum Op { // order is alligned with XPathOperator INVALID, /*Logical */ OR, AND, /*Equality */ EQ, NE, /*Relational*/ LT, LE, GT, GE, /*Arithmetic*/ PLUS, MINUS, MUL, DIV, MOD, /*Union */ UNION, }; static Op[] invertOp = { /*INVALID*/ Op.INVALID, /*OR */ Op.INVALID, /*END */ Op.INVALID, /*EQ */ Op.EQ, /*NE */ Op.NE, /*LT */ Op.GT, /*LE */ Op.GE, /*GT */ Op.LT, /*GE */ Op.LE, }; static public Operator.Op InvertOperator(Operator.Op op) { Debug.Assert(Op.EQ <= op && op <= Op.GE); return invertOp[(int)op]; } private Op opType; private AstNode opnd1; private AstNode opnd2; public Operator(Op op, AstNode opnd1, AstNode opnd2) { this.opType = op; this.opnd1 = opnd1; this.opnd2 = opnd2; } public override AstType Type { get {return AstType.Operator;} } public override XPathResultType ReturnType { get { if (opType <= Op.GE) { return XPathResultType.Boolean; } if (opType <= Op.MOD) { return XPathResultType.Number; } return XPathResultType.NodeSet; } } public Op OperatorType { get { return opType; } } public AstNode Operand1 { get { return opnd1; } } public AstNode Operand2 { get { return opnd2; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BamlBinaryReader.cs
- _CommandStream.cs
- ManageRequest.cs
- CharEntityEncoderFallback.cs
- objectresult_tresulttype.cs
- TransactionContext.cs
- ToolStripItem.cs
- TraceShell.cs
- CodeAttributeDeclarationCollection.cs
- UpdatableWrapper.cs
- EntityDataSourceSelectingEventArgs.cs
- GregorianCalendarHelper.cs
- TcpStreams.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- LoginViewDesigner.cs
- AliasGenerator.cs
- FilteredDataSetHelper.cs
- MissingManifestResourceException.cs
- InputReferenceExpression.cs
- SpellerError.cs
- tooltip.cs
- PolyLineSegmentFigureLogic.cs
- ClientSideQueueItem.cs
- SymmetricKeyWrap.cs
- TreeChangeInfo.cs
- RuntimeArgumentHandle.cs
- TypefaceCollection.cs
- OperationAbortedException.cs
- ReadOnlyCollection.cs
- BehaviorEditorPart.cs
- SmtpMail.cs
- ObjRef.cs
- storagemappingitemcollection.viewdictionary.cs
- CheckBoxFlatAdapter.cs
- IssuedTokenClientCredential.cs
- SettingsPropertyNotFoundException.cs
- BindingSource.cs
- Stack.cs
- ScriptHandlerFactory.cs
- WebPartEditorCancelVerb.cs
- DocumentCollection.cs
- TextParentUndoUnit.cs
- EditorPartDesigner.cs
- UpdateManifestForBrowserApplication.cs
- SymbolType.cs
- PropertyGroupDescription.cs
- SelectionHighlightInfo.cs
- MailHeaderInfo.cs
- ResourcesGenerator.cs
- EntityUtil.cs
- WindowsTreeView.cs
- Visual3D.cs
- TextTreeInsertUndoUnit.cs
- GcHandle.cs
- _ConnectOverlappedAsyncResult.cs
- Constants.cs
- SQLMembershipProvider.cs
- TabControlCancelEvent.cs
- SecurityPermission.cs
- AbandonedMutexException.cs
- ApplicationSecurityManager.cs
- NegotiationTokenAuthenticator.cs
- hwndwrapper.cs
- SchemaImporter.cs
- RuleSetDialog.Designer.cs
- CaseInsensitiveOrdinalStringComparer.cs
- OuterGlowBitmapEffect.cs
- TemplateInstanceAttribute.cs
- BamlLocalizer.cs
- BindingExpression.cs
- InplaceBitmapMetadataWriter.cs
- AttributeExtensions.cs
- HttpWebResponse.cs
- ColorDialog.cs
- DtrList.cs
- TemplatedWizardStep.cs
- VolatileEnlistmentMultiplexing.cs
- WebPartConnectionCollection.cs
- FunctionDescription.cs
- CodeEventReferenceExpression.cs
- InvalidOperationException.cs
- EntityCommandCompilationException.cs
- SiteIdentityPermission.cs
- WizardPanelChangingEventArgs.cs
- MemberJoinTreeNode.cs
- MailBnfHelper.cs
- GridViewSelectEventArgs.cs
- CategoryEditor.cs
- baseaxisquery.cs
- CustomWebEventKey.cs
- UnionCodeGroup.cs
- DeflateInput.cs
- XmlDownloadManager.cs
- RuleInfoComparer.cs
- TCPListener.cs
- ActivityTrace.cs
- DomainConstraint.cs
- ContextStaticAttribute.cs
- _NestedMultipleAsyncResult.cs
- IPAddressCollection.cs