Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / Configuration / CapabilitiesSection.cs / 1 / CapabilitiesSection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Configuration {
using System.Collections;
using System.Collections.Specialized;
using System.Diagnostics;
using System.Globalization;
using System.Reflection;
using System.Security;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Web.Caching;
using System.Web.Compilation;
using System.Web.Hosting;
using System.Security.Permissions;
//
// Implementation of
// expand the "with" pattern and match against the "match" expression.
//
internal class CapabilitiesSection : CapabilitiesRule {
internal CapabilitiesPattern _expr;
internal DelayedRegex _regex;
internal CapabilitiesRule[] _rules;
internal CapabilitiesSection(int type, DelayedRegex regex, CapabilitiesPattern expr, ArrayList rulelist) {
_type = type;
_regex = regex;
_expr = expr;
_rules = (CapabilitiesRule[])rulelist.ToArray(typeof(CapabilitiesRule));
}
internal override void Evaluate(CapabilitiesState state) {
Match match;
state.Exit = false;
if (_regex != null) {
match = _regex.Match(_expr.Expand(state));
if (!match.Success)
return;
state.AddMatch(_regex, match);
}
for (int i = 0; i < _rules.Length; i++) {
_rules[i].Evaluate(state);
if (state.Exit)
break;
}
if (_regex != null) {
state.PopMatch();
}
state.Exit = (Type == Case);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Configuration {
using System.Collections;
using System.Collections.Specialized;
using System.Diagnostics;
using System.Globalization;
using System.Reflection;
using System.Security;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Web.Caching;
using System.Web.Compilation;
using System.Web.Hosting;
using System.Security.Permissions;
//
// Implementation of
// expand the "with" pattern and match against the "match" expression.
//
internal class CapabilitiesSection : CapabilitiesRule {
internal CapabilitiesPattern _expr;
internal DelayedRegex _regex;
internal CapabilitiesRule[] _rules;
internal CapabilitiesSection(int type, DelayedRegex regex, CapabilitiesPattern expr, ArrayList rulelist) {
_type = type;
_regex = regex;
_expr = expr;
_rules = (CapabilitiesRule[])rulelist.ToArray(typeof(CapabilitiesRule));
}
internal override void Evaluate(CapabilitiesState state) {
Match match;
state.Exit = false;
if (_regex != null) {
match = _regex.Match(_expr.Expand(state));
if (!match.Success)
return;
state.AddMatch(_regex, match);
}
for (int i = 0; i < _rules.Length; i++) {
_rules[i].Evaluate(state);
if (state.Exit)
break;
}
if (_regex != null) {
state.PopMatch();
}
state.Exit = (Type == Case);
}
}
}
// 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
- ProfileBuildProvider.cs
- EntityClassGenerator.cs
- BaseDataBoundControl.cs
- NotCondition.cs
- BuildTopDownAttribute.cs
- DependentList.cs
- EncryptedHeader.cs
- SHA256.cs
- xmlsaver.cs
- StylusPointProperties.cs
- DesignerPerfEventProvider.cs
- DataGridViewRowPrePaintEventArgs.cs
- CodeVariableDeclarationStatement.cs
- XmlnsDefinitionAttribute.cs
- COM2ColorConverter.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- RefExpr.cs
- ThousandthOfEmRealDoubles.cs
- UriSection.cs
- BitStack.cs
- SqlBuffer.cs
- HyperLinkDataBindingHandler.cs
- IndexingContentUnit.cs
- ProcessModuleCollection.cs
- _NtlmClient.cs
- ScaleTransform.cs
- ConsoleCancelEventArgs.cs
- TypeHelper.cs
- TabPanel.cs
- ipaddressinformationcollection.cs
- ColumnResizeUndoUnit.cs
- FreezableOperations.cs
- SQLBytesStorage.cs
- FormViewDeleteEventArgs.cs
- CacheSection.cs
- UInt16Storage.cs
- FieldDescriptor.cs
- DataColumn.cs
- NullableLongAverageAggregationOperator.cs
- FigureParaClient.cs
- KeyboardDevice.cs
- DrawingAttributes.cs
- SupportsEventValidationAttribute.cs
- SqlDataSourceEnumerator.cs
- FullTrustAssemblyCollection.cs
- StylusPointCollection.cs
- AliasedSlot.cs
- ProfileModule.cs
- DefaultSettingsSection.cs
- WebConfigurationFileMap.cs
- CopyAttributesAction.cs
- ColumnResult.cs
- ComNativeDescriptor.cs
- TextDecorationLocationValidation.cs
- PipelineModuleStepContainer.cs
- DesignerActionHeaderItem.cs
- Propagator.Evaluator.cs
- DesignerDataStoredProcedure.cs
- PermissionSet.cs
- ImageCollectionCodeDomSerializer.cs
- filewebresponse.cs
- SoapObjectWriter.cs
- SuppressIldasmAttribute.cs
- ProtocolReflector.cs
- XmlUrlResolver.cs
- SafeNativeMethodsMilCoreApi.cs
- CompiledRegexRunner.cs
- UInt16Storage.cs
- Parameter.cs
- InvokeMethodDesigner.xaml.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- EventLogEntryCollection.cs
- SqlVersion.cs
- QuadraticBezierSegment.cs
- Input.cs
- WindowsStartMenu.cs
- HashLookup.cs
- _SingleItemRequestCache.cs
- DataListItemCollection.cs
- SmiEventSink.cs
- HtmlHistory.cs
- NumericPagerField.cs
- DesignSurfaceEvent.cs
- TypeUsageBuilder.cs
- TablePattern.cs
- TileModeValidation.cs
- DecimalKeyFrameCollection.cs
- HitTestParameters.cs
- DisplayClaim.cs
- QilTargetType.cs
- RTLAwareMessageBox.cs
- XsdDateTime.cs
- GPStream.cs
- Comparer.cs
- ReflectionHelper.cs
- ScopedKnownTypes.cs
- RefType.cs
- AttachedPropertyDescriptor.cs
- ButtonBaseAdapter.cs
- XsltLoader.cs