Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataWeb / Server / System / Data / Services / Parsing / Token.cs / 1 / Token.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a type to represent a parsed token. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Parsing { using System; using System.Diagnostics; ///Use this class to represent a lexical token. [DebuggerDisplay("{Id} @ {Position}: [{Text}]")] internal struct Token { ///Kind of token. internal TokenId Id; ///Token text. internal string Text; ///Position of token. internal int Position; ///Checks whether this token is a comparison operator. internal bool IsComparisonOperator { get { if (this.Id != TokenId.Identifier) { return false; } return this.Text == ExpressionConstants.KeywordEqual || this.Text == ExpressionConstants.KeywordNotEqual || this.Text == ExpressionConstants.KeywordLessThan || this.Text == ExpressionConstants.KeywordGreaterThan || this.Text == ExpressionConstants.KeywordLessThanOrEqual || this.Text == ExpressionConstants.KeywordGreaterThanOrEqual; } } ///Checks whether this token is an equality operator. internal bool IsEqualityOperator { get { return this.Id == TokenId.Identifier && (this.Text == ExpressionConstants.KeywordEqual || this.Text == ExpressionConstants.KeywordNotEqual); } } ///Checks whether this token is a valid token for a key value. internal bool IsKeyValueToken { get { return this.Id == TokenId.BinaryLiteral || this.Id == TokenId.BooleanLiteral || this.Id == TokenId.DateTimeLiteral || this.Id == TokenId.GuidLiteral || this.Id == TokenId.StringLiteral || ExpressionLexer.IsNumeric(this.Id); } } ///Provides a string representation of this token. ///String representation of this token. public override string ToString() { return String.Format(System.Globalization.CultureInfo.InvariantCulture, "{0} @ {1}: [{2}]", this.Id, this.Position, this.Text); } ///Gets the current identifier text. ///The current identifier text. internal string GetIdentifier() { if (this.Id != TokenId.Identifier) { throw DataServiceException.CreateSyntaxError(Strings.RequestQueryParser_IdentifierExpected(this.Position)); } return this.Text; } ///Checks that this token has the specified identifier. /// Identifier to check. ///true if this is an identifier with the specified text. internal bool IdentifierIs(string id) { return this.Id == TokenId.Identifier && this.Text == id; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a type to represent a parsed token. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Parsing { using System; using System.Diagnostics; ///Use this class to represent a lexical token. [DebuggerDisplay("{Id} @ {Position}: [{Text}]")] internal struct Token { ///Kind of token. internal TokenId Id; ///Token text. internal string Text; ///Position of token. internal int Position; ///Checks whether this token is a comparison operator. internal bool IsComparisonOperator { get { if (this.Id != TokenId.Identifier) { return false; } return this.Text == ExpressionConstants.KeywordEqual || this.Text == ExpressionConstants.KeywordNotEqual || this.Text == ExpressionConstants.KeywordLessThan || this.Text == ExpressionConstants.KeywordGreaterThan || this.Text == ExpressionConstants.KeywordLessThanOrEqual || this.Text == ExpressionConstants.KeywordGreaterThanOrEqual; } } ///Checks whether this token is an equality operator. internal bool IsEqualityOperator { get { return this.Id == TokenId.Identifier && (this.Text == ExpressionConstants.KeywordEqual || this.Text == ExpressionConstants.KeywordNotEqual); } } ///Checks whether this token is a valid token for a key value. internal bool IsKeyValueToken { get { return this.Id == TokenId.BinaryLiteral || this.Id == TokenId.BooleanLiteral || this.Id == TokenId.DateTimeLiteral || this.Id == TokenId.GuidLiteral || this.Id == TokenId.StringLiteral || ExpressionLexer.IsNumeric(this.Id); } } ///Provides a string representation of this token. ///String representation of this token. public override string ToString() { return String.Format(System.Globalization.CultureInfo.InvariantCulture, "{0} @ {1}: [{2}]", this.Id, this.Position, this.Text); } ///Gets the current identifier text. ///The current identifier text. internal string GetIdentifier() { if (this.Id != TokenId.Identifier) { throw DataServiceException.CreateSyntaxError(Strings.RequestQueryParser_IdentifierExpected(this.Position)); } return this.Text; } ///Checks that this token has the specified identifier. /// Identifier to check. ///true if this is an identifier with the specified text. internal bool IdentifierIs(string id) { return this.Id == TokenId.Identifier && this.Text == id; } } } // 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
- RepeaterItemCollection.cs
- Relationship.cs
- NotifyIcon.cs
- ImageDrawing.cs
- ValidatedControlConverter.cs
- RectAnimationClockResource.cs
- DoubleAverageAggregationOperator.cs
- FixedSOMPageConstructor.cs
- AdRotatorDesigner.cs
- XmlResolver.cs
- ListMarkerLine.cs
- Message.cs
- TaskDesigner.cs
- ObjectMemberMapping.cs
- Regex.cs
- XamlVector3DCollectionSerializer.cs
- DesignerLoader.cs
- Listen.cs
- UnSafeCharBuffer.cs
- safex509handles.cs
- TypeBinaryExpression.cs
- ResourceDescriptionAttribute.cs
- ListControl.cs
- XmlResolver.cs
- securestring.cs
- HttpCapabilitiesSectionHandler.cs
- SqlWebEventProvider.cs
- DynamicValidatorEventArgs.cs
- Error.cs
- NotifyCollectionChangedEventArgs.cs
- DbBuffer.cs
- EntityContainerEmitter.cs
- SelectionItemPatternIdentifiers.cs
- GeneralTransform.cs
- WebMessageEncodingElement.cs
- Enum.cs
- SecurityContext.cs
- CodeTypeOfExpression.cs
- Accessible.cs
- RemotingService.cs
- SHA1.cs
- RayHitTestParameters.cs
- WebReferenceOptions.cs
- DataControlImageButton.cs
- HttpRuntime.cs
- StorageRoot.cs
- ExpressionNode.cs
- CachedTypeface.cs
- EntityDataSourceWrapperCollection.cs
- OdbcCommand.cs
- EventLogInternal.cs
- NativeMethods.cs
- SspiNegotiationTokenAuthenticatorState.cs
- DataTableCollection.cs
- PropertyGeneratedEventArgs.cs
- HtmlInputSubmit.cs
- FSWPathEditor.cs
- DiscoveryDocumentReference.cs
- PersianCalendar.cs
- ResizeBehavior.cs
- FixedDocumentSequencePaginator.cs
- WrapPanel.cs
- SHA384CryptoServiceProvider.cs
- ErrorItem.cs
- State.cs
- AdornedElementPlaceholder.cs
- HealthMonitoringSection.cs
- CompilationRelaxations.cs
- CellTreeNodeVisitors.cs
- AssertUtility.cs
- PackWebResponse.cs
- SemaphoreSecurity.cs
- FixedBufferAttribute.cs
- ParameterSubsegment.cs
- StringCollection.cs
- UnsafeNativeMethods.cs
- XPathMessageFilter.cs
- XmlSchemaNotation.cs
- MemberHolder.cs
- MouseButtonEventArgs.cs
- MenuItemBinding.cs
- PersonalizableTypeEntry.cs
- designeractionbehavior.cs
- SignatureGenerator.cs
- SQLDateTimeStorage.cs
- TextServicesCompartment.cs
- RowSpanVector.cs
- MarkupCompiler.cs
- _ProxyRegBlob.cs
- ContentElementAutomationPeer.cs
- WorkingDirectoryEditor.cs
- WebPart.cs
- MenuTracker.cs
- TableAdapterManagerGenerator.cs
- LockCookie.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- PtsPage.cs
- Sorting.cs
- SizeFConverter.cs
- PrintingPermissionAttribute.cs