Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / Script / Serialization / JavaScriptString.cs / 1305376 / JavaScriptString.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Script.Serialization {
using System;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.Text;
internal class JavaScriptString {
private string _s;
private int _index;
internal JavaScriptString(string s) {
_s = s;
}
internal Nullable GetNextNonEmptyChar() {
while (_s.Length > _index) {
char c = _s[_index++];
if (!Char.IsWhiteSpace(c)) {
return c;
}
}
return null;
}
internal Nullable MoveNext() {
if (_s.Length > _index) {
return _s[_index++];
}
return null;
}
internal string MoveNext(int count) {
if (_s.Length >= _index + count) {
string result = _s.Substring(_index, count);
_index += count;
return result;
}
return null;
}
internal void MovePrev() {
if (_index > 0) {
_index--;
}
}
internal void MovePrev(int count) {
while (_index > 0 && count > 0) {
_index--;
count--;
}
}
public override string ToString() {
if (_s.Length > _index) {
return _s.Substring(_index);
}
return String.Empty;
}
internal string GetDebugString(string message) {
return message + " (" + _index + "): " + _s;
}
}
}
// 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
- Msmq3PoisonHandler.cs
- HtmlInputFile.cs
- ImpersonateTokenRef.cs
- DataGridViewCellStyleBuilderDialog.cs
- ColorPalette.cs
- AtomMaterializer.cs
- Compiler.cs
- RemoteWebConfigurationHost.cs
- AutomationPropertyInfo.cs
- QueryResult.cs
- SqlUtils.cs
- BindingContext.cs
- InputLanguageSource.cs
- BamlBinaryWriter.cs
- DesignSurface.cs
- BuildResultCache.cs
- List.cs
- SimpleWorkerRequest.cs
- AddingNewEventArgs.cs
- PageThemeParser.cs
- SqlDataSource.cs
- TrackBarRenderer.cs
- ImageCodecInfo.cs
- Section.cs
- Codec.cs
- FixUp.cs
- HandlerBase.cs
- PasswordRecovery.cs
- IDispatchConstantAttribute.cs
- NavigationPropertyEmitter.cs
- GridSplitter.cs
- InternalResources.cs
- SimpleBitVector32.cs
- ClientScriptManager.cs
- BufferedGraphics.cs
- ArraySortHelper.cs
- NavigatingCancelEventArgs.cs
- DrawListViewItemEventArgs.cs
- PreservationFileWriter.cs
- GeometryModel3D.cs
- DefaultTextStore.cs
- CheckedListBox.cs
- SchemaObjectWriter.cs
- XmlElementList.cs
- XhtmlBasicPageAdapter.cs
- Match.cs
- Size.cs
- ObjectDataSourceView.cs
- SecureUICommand.cs
- DesignRelation.cs
- XhtmlBasicPhoneCallAdapter.cs
- DefaultWorkflowTransactionService.cs
- DataSourceView.cs
- XmlNodeWriter.cs
- RelatedCurrencyManager.cs
- StringTraceRecord.cs
- SubqueryRules.cs
- SqlMethodAttribute.cs
- CurrentChangedEventManager.cs
- ToolStripRendererSwitcher.cs
- DelayLoadType.cs
- ParameterCollection.cs
- SQLResource.cs
- TableDetailsCollection.cs
- Quaternion.cs
- coordinatorfactory.cs
- PeerSecurityHelpers.cs
- EntityDataSourceValidationException.cs
- TextAdaptor.cs
- InternalsVisibleToAttribute.cs
- parserscommon.cs
- CodeDirectionExpression.cs
- Simplifier.cs
- MultilineStringConverter.cs
- NotCondition.cs
- CustomValidator.cs
- VirtualPathUtility.cs
- RoleManagerSection.cs
- CacheSection.cs
- CharStorage.cs
- ChannelManager.cs
- ProtocolException.cs
- ConversionContext.cs
- CompoundFileReference.cs
- OutputCacheProfileCollection.cs
- WhitespaceRuleReader.cs
- DurationConverter.cs
- SourceChangedEventArgs.cs
- TypedServiceChannelBuilder.cs
- SolidColorBrush.cs
- SafeNativeMethods.cs
- DockEditor.cs
- ImplicitInputBrush.cs
- RequestBringIntoViewEventArgs.cs
- ValidatingReaderNodeData.cs
- CurrentChangedEventManager.cs
- CaseStatement.cs
- PropertyContainer.cs
- InstanceKey.cs
- XmlDocumentType.cs