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
- DataListCommandEventArgs.cs
- MetadataSource.cs
- MenuItemBinding.cs
- GlyphRunDrawing.cs
- ConfigXmlCDataSection.cs
- PublisherMembershipCondition.cs
- SocketInformation.cs
- DynamicILGenerator.cs
- counter.cs
- Stack.cs
- TypeGeneratedEventArgs.cs
- TerminateWorkflow.cs
- MaskedTextBoxTextEditor.cs
- FormViewUpdateEventArgs.cs
- NameValueFileSectionHandler.cs
- HtmlInputReset.cs
- MenuEventArgs.cs
- ProxyGenerator.cs
- NameValuePermission.cs
- EventMappingSettingsCollection.cs
- SingleKeyFrameCollection.cs
- WCFServiceClientProxyGenerator.cs
- SymbolEqualComparer.cs
- RepeaterItemEventArgs.cs
- FlowchartSizeFeature.cs
- CompatibleIComparer.cs
- DbConnectionPoolGroupProviderInfo.cs
- Boolean.cs
- followingquery.cs
- HMACSHA384.cs
- ServiceSecurityAuditBehavior.cs
- EditorPartCollection.cs
- XdrBuilder.cs
- TabControlCancelEvent.cs
- DelayLoadType.cs
- DisplayNameAttribute.cs
- XmlDocument.cs
- AuthorizationRuleCollection.cs
- IpcChannelHelper.cs
- GradientBrush.cs
- NotifyCollectionChangedEventArgs.cs
- Renderer.cs
- ImageListStreamer.cs
- RtfToXamlReader.cs
- VectorCollectionConverter.cs
- BindingListCollectionView.cs
- TraceSection.cs
- EditorBrowsableAttribute.cs
- Command.cs
- CalendarDateRange.cs
- sqlnorm.cs
- WsatAdminException.cs
- ModelServiceImpl.cs
- RealizationContext.cs
- securitycriticaldata.cs
- HtmlInputPassword.cs
- SBCSCodePageEncoding.cs
- InputScope.cs
- XslAst.cs
- ELinqQueryState.cs
- BadImageFormatException.cs
- ProcessModelSection.cs
- AssociationType.cs
- EnumBuilder.cs
- ProbeMatchesMessage11.cs
- ImpersonationContext.cs
- ByteConverter.cs
- UserControlBuildProvider.cs
- DocumentSchemaValidator.cs
- ElementUtil.cs
- MultiDataTrigger.cs
- SelectionEditingBehavior.cs
- XmlQuerySequence.cs
- ContainerCodeDomSerializer.cs
- QueryContinueDragEventArgs.cs
- RelationshipWrapper.cs
- OdbcDataAdapter.cs
- ProfilePropertySettings.cs
- MediaSystem.cs
- TransactedBatchContext.cs
- GridViewColumn.cs
- SoapSchemaExporter.cs
- DataExpression.cs
- XmlSerializerFactory.cs
- ToolStripDropDownMenu.cs
- BitStack.cs
- FunctionQuery.cs
- StylusPointPropertyId.cs
- OverflowException.cs
- CapabilitiesState.cs
- PropertyGroupDescription.cs
- RepeaterCommandEventArgs.cs
- FrameworkElement.cs
- ClickablePoint.cs
- ButtonPopupAdapter.cs
- ImageDrawing.cs
- Rotation3DAnimation.cs
- FormView.cs
- Merger.cs
- OperatingSystem.cs