Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / Mail / BufferBuilder.cs / 1 / BufferBuilder.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { using System; using System.IO; using System.Globalization; internal class BufferBuilder { byte[] buffer; int offset; internal BufferBuilder() : this(256) { } internal BufferBuilder(int initialSize) { this.buffer = new byte[initialSize]; } void EnsureBuffer(int count) { if (count > this.buffer.Length - this.offset) { byte[] newBuffer = new byte[((buffer.Length * 2)>(buffer.Length + count))?(buffer.Length*2):(buffer.Length + count)]; Buffer.BlockCopy(this.buffer, 0, newBuffer, 0, this.offset); this.buffer = newBuffer; } } internal void Append(byte value) { EnsureBuffer(1); this.buffer[this.offset++] = value; } internal void Append(byte[] value) { Append(value, 0, value.Length); } internal void Append(byte[] value, int offset, int count) { EnsureBuffer(count); Buffer.BlockCopy(value, offset, this.buffer, this.offset, count); this.offset += count; } internal void Append(string value) { Append(value, 0, value.Length); } internal void Append(string value, int offset, int count) { EnsureBuffer(count); for (int i = 0; i < count; i++) { char c = value[offset+i]; if ((ushort)c > 0xFF) throw new FormatException(SR.GetString(SR.MailHeaderFieldInvalidCharacter)); this.buffer[this.offset + i] = (byte)c; } this.offset += count; } internal int Length { get { return this.offset; } } internal byte[] GetBuffer() { return this.buffer; } internal void Reset() { this.offset = 0; } } }
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SystemWebSectionGroup.cs
- SqlUtils.cs
- ContextCorrelationInitializer.cs
- LogLogRecordEnumerator.cs
- ToolStripPanelRenderEventArgs.cs
- SynchronousChannelMergeEnumerator.cs
- WindowInteractionStateTracker.cs
- Literal.cs
- DefaultPropertiesToSend.cs
- BehaviorEditorPart.cs
- PipelineDeploymentState.cs
- SecurityCookieModeValidator.cs
- StackBuilderSink.cs
- ExpressionCopier.cs
- ADConnectionHelper.cs
- CustomAttributeFormatException.cs
- MappedMetaModel.cs
- QueryCacheKey.cs
- AssociationSetMetadata.cs
- QualifierSet.cs
- NativeMethodsCLR.cs
- ToolStripPanel.cs
- RequestBringIntoViewEventArgs.cs
- MasterPageParser.cs
- MimeTypeAttribute.cs
- DefaultObjectMappingItemCollection.cs
- PeerNearMe.cs
- ArglessEventHandlerProxy.cs
- ScrollChangedEventArgs.cs
- ConnectionStringsExpressionBuilder.cs
- TransformerInfoCollection.cs
- FixedSchema.cs
- ErrorRuntimeConfig.cs
- ObjectListFieldCollection.cs
- ValidationPropertyAttribute.cs
- TemplateControlBuildProvider.cs
- StrongNameUtility.cs
- LiteralText.cs
- InertiaExpansionBehavior.cs
- DecimalConstantAttribute.cs
- ResolveCriteria11.cs
- WaitHandleCannotBeOpenedException.cs
- Nullable.cs
- OptimizerPatterns.cs
- ComPlusDiagnosticTraceSchemas.cs
- PhysicalOps.cs
- CompiledQueryCacheEntry.cs
- LinqDataView.cs
- OrderedDictionary.cs
- CorrelationResolver.cs
- List.cs
- BitmapEffectCollection.cs
- RunInstallerAttribute.cs
- NullEntityWrapper.cs
- CaseStatementProjectedSlot.cs
- VariableBinder.cs
- GeometryGroup.cs
- DependencyObjectType.cs
- oledbmetadatacolumnnames.cs
- DataGridViewRowConverter.cs
- RoleService.cs
- TimeZone.cs
- EmitterCache.cs
- XmlTextReaderImplHelpers.cs
- WorkflowApplicationCompletedEventArgs.cs
- EventItfInfo.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- DataRelationPropertyDescriptor.cs
- AssertSection.cs
- MenuItem.cs
- InvalidDocumentContentsException.cs
- FileDialog.cs
- VirtualDirectoryMappingCollection.cs
- GACIdentityPermission.cs
- OpCopier.cs
- safesecurityhelperavalon.cs
- AnnotationResourceChangedEventArgs.cs
- RegistrySecurity.cs
- RSAOAEPKeyExchangeFormatter.cs
- JulianCalendar.cs
- FontFamily.cs
- PersonalizationDictionary.cs
- OleDbPermission.cs
- FtpWebRequest.cs
- SymbolResolver.cs
- ProtectedConfigurationProviderCollection.cs
- formatstringdialog.cs
- SqlConnectionManager.cs
- AutoGeneratedFieldProperties.cs
- LineSegment.cs
- IRCollection.cs
- UniqueIdentifierService.cs
- StreamUpdate.cs
- Frame.cs
- AlternateView.cs
- SessionStateItemCollection.cs
- JournalEntry.cs
- WebHttpDispatchOperationSelectorData.cs
- DesignerTextWriter.cs
- WebPartConnection.cs