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
- SQLStringStorage.cs
- DrawingContextWalker.cs
- HttpContextServiceHost.cs
- IChannel.cs
- Buffer.cs
- DetailsViewPagerRow.cs
- VisualProxy.cs
- InheritanceContextHelper.cs
- ItemsControl.cs
- RepeatBehavior.cs
- RequestSecurityTokenForRemoteTokenFactory.cs
- DSASignatureDeformatter.cs
- PageThemeParser.cs
- ProxyManager.cs
- xmlformatgeneratorstatics.cs
- ArcSegment.cs
- SiteMapHierarchicalDataSourceView.cs
- GACMembershipCondition.cs
- Rotation3DAnimationUsingKeyFrames.cs
- OutputWindow.cs
- StrongNameIdentityPermission.cs
- Point3DAnimationBase.cs
- RelationshipFixer.cs
- RelativeSource.cs
- GenericTypeParameterBuilder.cs
- TableCell.cs
- ByteStreamGeometryContext.cs
- PocoPropertyAccessorStrategy.cs
- OutputCacheProfileCollection.cs
- Exception.cs
- UniqueIdentifierService.cs
- TraceFilter.cs
- ArrayEditor.cs
- FrameworkContentElement.cs
- SafeMemoryMappedViewHandle.cs
- SortedList.cs
- ColumnPropertiesGroup.cs
- DynamicPropertyReader.cs
- DataSysAttribute.cs
- ParseNumbers.cs
- SemaphoreSecurity.cs
- ColorInterpolationModeValidation.cs
- LinearGradientBrush.cs
- MissingFieldException.cs
- FontWeights.cs
- ToolStripPanelCell.cs
- EventPropertyMap.cs
- HandlerBase.cs
- UpdateTranslator.cs
- HMACSHA384.cs
- FontSource.cs
- HierarchicalDataTemplate.cs
- PartialList.cs
- ConnectionsZone.cs
- EnumValAlphaComparer.cs
- DbInsertCommandTree.cs
- MaterialGroup.cs
- LinkButton.cs
- Rotation3D.cs
- Mouse.cs
- ControlPaint.cs
- MouseActionValueSerializer.cs
- UrlUtility.cs
- XmlConvert.cs
- ToolStripControlHost.cs
- TrackingWorkflowEventArgs.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- GridViewColumnCollectionChangedEventArgs.cs
- Attributes.cs
- ConnectionManagementElementCollection.cs
- HttpRawResponse.cs
- RuntimeVariableList.cs
- MachineKeyConverter.cs
- LineSegment.cs
- StatusBarPanelClickEvent.cs
- ClientRoleProvider.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- StringExpressionSet.cs
- DispatcherBuilder.cs
- ConnectionsZone.cs
- ReferenceEqualityComparer.cs
- MDIControlStrip.cs
- CodeEntryPointMethod.cs
- SynchronizationFilter.cs
- DesignerWithHeader.cs
- GeometryHitTestResult.cs
- InsufficientMemoryException.cs
- RectangleGeometry.cs
- TextChangedEventArgs.cs
- FileNotFoundException.cs
- rsa.cs
- WrappedKeySecurityToken.cs
- DPTypeDescriptorContext.cs
- ArrayList.cs
- CellTreeNode.cs
- EventLogger.cs
- AsyncDataRequest.cs
- ToolStripDropDownMenu.cs
- SQLResource.cs
- SystemMulticastIPAddressInformation.cs