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
- ParserHooks.cs
- OneToOneMappingSerializer.cs
- DmlSqlGenerator.cs
- mansign.cs
- TemplatedControlDesigner.cs
- Int32AnimationUsingKeyFrames.cs
- DataGridViewColumnStateChangedEventArgs.cs
- WebPartDisplayModeCollection.cs
- CodeAttributeDeclaration.cs
- ApplicationFileParser.cs
- ErrorEventArgs.cs
- DataGridViewCellCancelEventArgs.cs
- OpenFileDialog.cs
- FormParameter.cs
- SQLCharsStorage.cs
- UriTemplateClientFormatter.cs
- StylusButtonCollection.cs
- SHA1.cs
- DataException.cs
- XamlToRtfWriter.cs
- ToolBarPanel.cs
- ServiceModelDictionary.cs
- DataControlFieldCollection.cs
- RsaKeyIdentifierClause.cs
- RandomDelaySendsAsyncResult.cs
- OracleConnectionFactory.cs
- WinFormsComponentEditor.cs
- SemanticAnalyzer.cs
- Merger.cs
- WebMessageEncodingBindingElement.cs
- SQLGuidStorage.cs
- ClientUrlResolverWrapper.cs
- SqlException.cs
- HtmlElement.cs
- AddInPipelineAttributes.cs
- ControlBuilder.cs
- DataGridViewComboBoxColumn.cs
- SetIndexBinder.cs
- PermissionRequestEvidence.cs
- SafeRightsManagementQueryHandle.cs
- ScriptControlManager.cs
- ApplicationGesture.cs
- CreateRefExpr.cs
- InkPresenter.cs
- ToolZoneDesigner.cs
- HostingPreferredMapPath.cs
- WebResourceAttribute.cs
- NameValueFileSectionHandler.cs
- NavigationWindow.cs
- MouseGestureValueSerializer.cs
- ProtocolsSection.cs
- MarkupCompilePass1.cs
- DrawItemEvent.cs
- EnvironmentPermission.cs
- LayoutDump.cs
- Matrix.cs
- ExtensionFile.cs
- MetadataProperty.cs
- Vector3DCollection.cs
- SafeEventLogWriteHandle.cs
- ControlBuilderAttribute.cs
- EdmConstants.cs
- InternalMappingException.cs
- SystemBrushes.cs
- PathSegment.cs
- QuaternionIndependentAnimationStorage.cs
- AttributeEmitter.cs
- TextEditorCopyPaste.cs
- NavigationEventArgs.cs
- Timer.cs
- KnownBoxes.cs
- PropertyDescriptor.cs
- FormsIdentity.cs
- ParseChildrenAsPropertiesAttribute.cs
- DbProviderSpecificTypePropertyAttribute.cs
- RelationshipEnd.cs
- DetailsViewInsertEventArgs.cs
- FragmentQueryProcessor.cs
- WeakKeyDictionary.cs
- AddInDeploymentState.cs
- Authorization.cs
- ResourcesChangeInfo.cs
- securitycriticaldataformultiplegetandset.cs
- RenderOptions.cs
- GridViewColumnCollectionChangedEventArgs.cs
- WindowsTokenRoleProvider.cs
- PropertyStore.cs
- ModuleBuilderData.cs
- HostProtectionPermission.cs
- ObjectAnimationUsingKeyFrames.cs
- SystemResources.cs
- DynamicActivityXamlReader.cs
- Vector3DCollection.cs
- FamilyMap.cs
- ComponentChangedEvent.cs
- SystemIPv4InterfaceProperties.cs
- IndexedGlyphRun.cs
- VisualBrush.cs
- SecurityIdentifierConverter.cs
- XmlSchemaComplexContentExtension.cs