Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / InputScope.cs / 1 / InputScope.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; using System.Collections; internal class InputScope : DocumentScope { private InputScope parent; private bool forwardCompatibility; private bool canHaveApplyImports; private Hashtable variables; private Hashtable extensionNamespaces; private Hashtable excludedNamespaces; internal InputScope Parent { get { return this.parent; } } internal Hashtable Variables { get { return this.variables; } } internal bool ForwardCompatibility { get { return this.forwardCompatibility; } set { this.forwardCompatibility = value; } } internal bool CanHaveApplyImports { get { return this.canHaveApplyImports; } set { this.canHaveApplyImports = value; } } internal InputScope(InputScope parent) { Init(parent); } internal void Init(InputScope parent) { this.scopes = null; this.parent = parent; if (this.parent != null) { this.forwardCompatibility = this.parent.forwardCompatibility; this.canHaveApplyImports = this.parent.canHaveApplyImports; } } internal void InsertExtensionNamespace(String nspace) { if (this.extensionNamespaces == null ) { this.extensionNamespaces = new Hashtable(); } this.extensionNamespaces[nspace] = null; } internal bool IsExtensionNamespace(String nspace) { if (extensionNamespaces == null ) { return false; } return extensionNamespaces.Contains(nspace); } internal void InsertExcludedNamespace(String nspace) { if (this.excludedNamespaces == null ) { this.excludedNamespaces = new Hashtable(); } this.excludedNamespaces[nspace] = null; } internal bool IsExcludedNamespace(String nspace) { if (excludedNamespaces == null ) { return false; } return excludedNamespaces.Contains(nspace); } internal void InsertVariable(VariableAction variable) { Debug.Assert(variable != null); if (this.variables == null) { this.variables = new Hashtable(); } this.variables[variable.Name] = variable; } internal int GetVeriablesCount() { if (this.variables == null) { return 0; } return this.variables.Count; } public VariableAction ResolveVariable(XmlQualifiedName qname) { for (InputScope inputScope = this; inputScope != null; inputScope = inputScope.Parent) { if (inputScope.Variables != null) { VariableAction variable = (VariableAction) inputScope.Variables[qname]; if(variable != null) { return variable; } } } return null; } public VariableAction ResolveGlobalVariable(XmlQualifiedName qname) { InputScope prevScope = null; for (InputScope inputScope = this; inputScope != null; inputScope = inputScope.Parent) { prevScope = inputScope; } return prevScope.ResolveVariable(qname); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; using System.Collections; internal class InputScope : DocumentScope { private InputScope parent; private bool forwardCompatibility; private bool canHaveApplyImports; private Hashtable variables; private Hashtable extensionNamespaces; private Hashtable excludedNamespaces; internal InputScope Parent { get { return this.parent; } } internal Hashtable Variables { get { return this.variables; } } internal bool ForwardCompatibility { get { return this.forwardCompatibility; } set { this.forwardCompatibility = value; } } internal bool CanHaveApplyImports { get { return this.canHaveApplyImports; } set { this.canHaveApplyImports = value; } } internal InputScope(InputScope parent) { Init(parent); } internal void Init(InputScope parent) { this.scopes = null; this.parent = parent; if (this.parent != null) { this.forwardCompatibility = this.parent.forwardCompatibility; this.canHaveApplyImports = this.parent.canHaveApplyImports; } } internal void InsertExtensionNamespace(String nspace) { if (this.extensionNamespaces == null ) { this.extensionNamespaces = new Hashtable(); } this.extensionNamespaces[nspace] = null; } internal bool IsExtensionNamespace(String nspace) { if (extensionNamespaces == null ) { return false; } return extensionNamespaces.Contains(nspace); } internal void InsertExcludedNamespace(String nspace) { if (this.excludedNamespaces == null ) { this.excludedNamespaces = new Hashtable(); } this.excludedNamespaces[nspace] = null; } internal bool IsExcludedNamespace(String nspace) { if (excludedNamespaces == null ) { return false; } return excludedNamespaces.Contains(nspace); } internal void InsertVariable(VariableAction variable) { Debug.Assert(variable != null); if (this.variables == null) { this.variables = new Hashtable(); } this.variables[variable.Name] = variable; } internal int GetVeriablesCount() { if (this.variables == null) { return 0; } return this.variables.Count; } public VariableAction ResolveVariable(XmlQualifiedName qname) { for (InputScope inputScope = this; inputScope != null; inputScope = inputScope.Parent) { if (inputScope.Variables != null) { VariableAction variable = (VariableAction) inputScope.Variables[qname]; if(variable != null) { return variable; } } } return null; } public VariableAction ResolveGlobalVariable(XmlQualifiedName qname) { InputScope prevScope = null; for (InputScope inputScope = this; inputScope != null; inputScope = inputScope.Parent) { prevScope = inputScope; } return prevScope.ResolveVariable(qname); } } } // 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
- KeyValueConfigurationElement.cs
- TextSpan.cs
- RequestCachePolicyConverter.cs
- PtsHost.cs
- BindStream.cs
- AuthenticationModuleElement.cs
- IntPtr.cs
- SchemaImporterExtensionElementCollection.cs
- DetailsViewUpdatedEventArgs.cs
- IntranetCredentialPolicy.cs
- SuppressMergeCheckAttribute.cs
- IListConverters.cs
- XmlUrlResolver.cs
- GridViewCancelEditEventArgs.cs
- KnownBoxes.cs
- ManagedIStream.cs
- WebRequestModulesSection.cs
- RequestCacheManager.cs
- ProfileServiceManager.cs
- base64Transforms.cs
- SerializationFieldInfo.cs
- RegistryKey.cs
- WorkflowMessageEventHandler.cs
- KeyValueSerializer.cs
- RegexCharClass.cs
- DataGridViewCellPaintingEventArgs.cs
- SystemResources.cs
- Binding.cs
- WebReference.cs
- SecurityState.cs
- SiteMap.cs
- DrawingBrush.cs
- CellNormalizer.cs
- DragStartedEventArgs.cs
- ListViewEditEventArgs.cs
- CustomMenuItemCollection.cs
- OutputCacheSettingsSection.cs
- CodeComment.cs
- HttpRequestTraceRecord.cs
- SimpleBitVector32.cs
- WebPartCancelEventArgs.cs
- _PooledStream.cs
- Clipboard.cs
- ComNativeDescriptor.cs
- SimpleApplicationHost.cs
- DataGridViewColumnEventArgs.cs
- ObjectDataSourceEventArgs.cs
- EventLogEntryCollection.cs
- SelectionPattern.cs
- TerminatingOperationBehavior.cs
- XamlReader.cs
- HotSpot.cs
- InterleavedZipPartStream.cs
- ADMembershipProvider.cs
- EpmContentDeSerializer.cs
- VisualStateGroup.cs
- StatusStrip.cs
- RuleSettingsCollection.cs
- GroupBox.cs
- Annotation.cs
- CounterSampleCalculator.cs
- SessionPageStateSection.cs
- EntityObject.cs
- ArrayConverter.cs
- FragmentNavigationEventArgs.cs
- DataRowChangeEvent.cs
- ServicesSection.cs
- CompiledIdentityConstraint.cs
- InstalledFontCollection.cs
- GridViewSortEventArgs.cs
- Signature.cs
- AutoCompleteStringCollection.cs
- Soap.cs
- Overlapped.cs
- PolicyException.cs
- FileEnumerator.cs
- DropSourceBehavior.cs
- ChtmlTextBoxAdapter.cs
- LOSFormatter.cs
- PageRequestManager.cs
- Constant.cs
- SoapAttributes.cs
- HWStack.cs
- QualifiedCellIdBoolean.cs
- RemotingException.cs
- HyperLinkColumn.cs
- CollectionChangedEventManager.cs
- TreeViewImageKeyConverter.cs
- TdsParserSessionPool.cs
- RSAPKCS1SignatureDeformatter.cs
- TextOutput.cs
- CalendarDataBindingHandler.cs
- CodeMethodInvokeExpression.cs
- RenderData.cs
- WorkflowDebuggerSteppingAttribute.cs
- FloaterBaseParagraph.cs
- XmlSchemaSubstitutionGroup.cs
- LeaseManager.cs
- BamlLocalizer.cs
- TcpClientSocketManager.cs