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
- StylusTip.cs
- DisableDpiAwarenessAttribute.cs
- BinaryMethodMessage.cs
- AdvancedBindingPropertyDescriptor.cs
- MessageEnumerator.cs
- SharedPerformanceCounter.cs
- CriticalExceptions.cs
- NativeMethods.cs
- XmlStreamStore.cs
- DiscriminatorMap.cs
- TableCellCollection.cs
- MsmqOutputMessage.cs
- IDReferencePropertyAttribute.cs
- cookieexception.cs
- InvalidStoreProtectionKeyException.cs
- _HeaderInfo.cs
- RecordBuilder.cs
- ISessionStateStore.cs
- DesignerProperties.cs
- ItemContainerGenerator.cs
- SecureUICommand.cs
- login.cs
- TypeCacheManager.cs
- SystemTcpConnection.cs
- XmlUnspecifiedAttribute.cs
- XmlHierarchyData.cs
- Membership.cs
- WebPartZoneBase.cs
- SchemaExporter.cs
- DataBindingExpressionBuilder.cs
- NodeLabelEditEvent.cs
- TypeUtil.cs
- DataGridLinkButton.cs
- XmlHierarchicalEnumerable.cs
- ColorConvertedBitmap.cs
- WindowsSysHeader.cs
- XmlHierarchicalDataSourceView.cs
- ContainerUtilities.cs
- TypefaceMetricsCache.cs
- ObfuscateAssemblyAttribute.cs
- NotSupportedException.cs
- DataGridViewCheckBoxCell.cs
- TemplateColumn.cs
- ProfessionalColors.cs
- ProcessProtocolHandler.cs
- BitmapEffectInputData.cs
- DotExpr.cs
- StateBag.cs
- CheckBoxBaseAdapter.cs
- SymbolTable.cs
- XslAst.cs
- CheckBoxField.cs
- SqlInfoMessageEvent.cs
- BindingExpressionUncommonField.cs
- PointAnimationClockResource.cs
- WinFormsUtils.cs
- BasicCellRelation.cs
- MenuItemCollection.cs
- Path.cs
- HttpListenerRequestUriBuilder.cs
- diagnosticsswitches.cs
- XamlReader.cs
- TraceEventCache.cs
- TextEditorSelection.cs
- Rotation3DKeyFrameCollection.cs
- TextSerializer.cs
- RectangleGeometry.cs
- SkewTransform.cs
- HGlobalSafeHandle.cs
- PerfCounters.cs
- ListDataHelper.cs
- XamlRtfConverter.cs
- ToolStripHighContrastRenderer.cs
- ResetableIterator.cs
- XmlLinkedNode.cs
- FileUpload.cs
- DataGridTextBox.cs
- SimpleTypeResolver.cs
- EdmType.cs
- TextDecorationLocationValidation.cs
- KnownTypesHelper.cs
- LabelLiteral.cs
- PerformanceCounterPermissionEntry.cs
- Matrix3DConverter.cs
- WindowsStatusBar.cs
- BindingValueChangedEventArgs.cs
- HierarchicalDataBoundControlAdapter.cs
- ContentElement.cs
- TextFragmentEngine.cs
- ConversionContext.cs
- SessionEndingCancelEventArgs.cs
- MenuItemAutomationPeer.cs
- DbConnectionClosed.cs
- DateTime.cs
- BuilderElements.cs
- Helpers.cs
- NotifyParentPropertyAttribute.cs
- SiteMap.cs
- KeyEventArgs.cs
- MsdtcClusterUtils.cs