Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / SqlClient / SqlGen / SymbolTable.cs / 1305376 / SymbolTable.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Text; using System.Data.SqlClient; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees; namespace System.Data.SqlClient.SqlGen { ////// The symbol table is quite primitive - it is a stack with a new entry for /// each scope. Lookups search from the top of the stack to the bottom, until /// an entry is found. /// /// The symbols are of the following kinds /// internal sealed class SymbolTable { private List///
/// /// Symbols represent names- ///
represents tables (extents/nested selects/unnests) - ///
represents Join nodes - ///
columns. to be resolved, /// or things to be renamed. /// > symbols = new List >(); internal void EnterScope() { symbols.Add(new Dictionary (StringComparer.OrdinalIgnoreCase)); } internal void ExitScope() { symbols.RemoveAt(symbols.Count - 1); } internal void Add(string name, Symbol value) { symbols[symbols.Count - 1][name] = value; } internal Symbol Lookup(string name) { for (int i = symbols.Count - 1; i >= 0; --i) { if (symbols[i].ContainsKey(name)) { return symbols[i][name]; } } return null; } } } // 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
- HyperLinkDesigner.cs
- DataSpaceManager.cs
- XhtmlConformanceSection.cs
- AdapterDictionary.cs
- CodeExporter.cs
- WinInetCache.cs
- NumericExpr.cs
- PreProcessInputEventArgs.cs
- MarkupCompilePass2.cs
- DbSourceCommand.cs
- KnownTypesHelper.cs
- Simplifier.cs
- VisualStyleTypesAndProperties.cs
- ModelTreeManager.cs
- FlowDocumentPaginator.cs
- XhtmlBasicLabelAdapter.cs
- DataGridViewColumnCollectionDialog.cs
- Stream.cs
- SessionStateItemCollection.cs
- HttpFileCollectionWrapper.cs
- SearchForVirtualItemEventArgs.cs
- DataMember.cs
- EdmItemCollection.cs
- Missing.cs
- ZeroOpNode.cs
- CfgParser.cs
- PerformanceCountersElement.cs
- ResXDataNode.cs
- ResizingMessageFilter.cs
- APCustomTypeDescriptor.cs
- Int32AnimationUsingKeyFrames.cs
- ReversePositionQuery.cs
- DesignTimeTemplateParser.cs
- ECDiffieHellmanCngPublicKey.cs
- CodeBlockBuilder.cs
- ScriptReferenceEventArgs.cs
- CellIdBoolean.cs
- FlowDocumentPageViewerAutomationPeer.cs
- TextFormatterImp.cs
- MediaElement.cs
- safemediahandle.cs
- ProfessionalColors.cs
- WebPartAddingEventArgs.cs
- SkinBuilder.cs
- Token.cs
- ListViewDataItem.cs
- ExpressionQuoter.cs
- DataGridViewHitTestInfo.cs
- ClientConvert.cs
- ListBindableAttribute.cs
- CaseKeyBox.ViewModel.cs
- UInt64.cs
- WebConfigurationFileMap.cs
- MessageHeaderDescriptionCollection.cs
- StdValidatorsAndConverters.cs
- FixedLineResult.cs
- HtmlLink.cs
- Decimal.cs
- ActivationServices.cs
- StylusPointCollection.cs
- PageParserFilter.cs
- SafeViewOfFileHandle.cs
- FlowPanelDesigner.cs
- XmlHelper.cs
- Avt.cs
- DataGridPagerStyle.cs
- SoapMessage.cs
- CorrelationService.cs
- CodeEventReferenceExpression.cs
- DbModificationClause.cs
- AncestorChangedEventArgs.cs
- PeerPresenceInfo.cs
- FlowDocument.cs
- UpdateDelegates.Generated.cs
- PathFigure.cs
- CursorConverter.cs
- ViewStateChangedEventArgs.cs
- WebAdminConfigurationHelper.cs
- SimpleLine.cs
- CSharpCodeProvider.cs
- PropertyStore.cs
- HostingEnvironmentSection.cs
- OleDbConnection.cs
- AlgoModule.cs
- DataGridViewCheckBoxCell.cs
- ToolStripSplitStackLayout.cs
- ConnectionString.cs
- WMIGenerator.cs
- SparseMemoryStream.cs
- AppSettingsSection.cs
- KeyNameIdentifierClause.cs
- Evidence.cs
- ZoneMembershipCondition.cs
- XmlDataSourceNodeDescriptor.cs
- CommandValueSerializer.cs
- FunctionParameter.cs
- Matrix3D.cs
- DataListItemEventArgs.cs
- XmlWriterDelegator.cs
- x509utils.cs