Skip to content

Repository files navigation

Smart-Net

NuGet

Foundation library for building other Smart libraries.

Summary

Reflection

  • IDelegateFactory β€” abstraction for creating delegates from constructors/properties/fields
  • PrimitiveConvert β€” fast primitive type conversion helpers

Collections

  • ThreadsafeTypeHashArrayMap<TValue> β€” lock-minimized thread-safe dictionary keyed by Type
  • ProjectionReadOnlyList<TSource, TResult> β€” lazily converted read-only list view
  • Extension methods for ICollection, IDictionary, IEnumerable (ForEach, JoinToString etc.)

ComponentModel

  • ComponentContainer / ComponentConfig β€” lightweight service locator / IoC container
  • NotificationObject / NotificationValue<T> β€” INotifyPropertyChanged base implementations
  • DisposableObject β€” base class with dispose pattern
  • AtomicBoolean, AtomicInteger, AtomicReference<T> β€” atomic value wrappers

IO

  • SpanReader<T> / SpanWriter<T> β€” ref struct sequential span readers/writers
  • BufferWriterSlim<T> β€” stack-friendly IBufferWriter<T> implementation
  • PooledBufferWriter<T> / PooledMemoryStream β€” ArrayPool-backed writer and stream
  • MemoryOwner<T> β€” IMemoryOwner<T> wrapper for ArrayPool
  • BufferWriterSlim<char> string building extensions β€” WriteLine / WriteFormattable / interpolated Append / ToStringAndClear
  • Extension methods for Stream, IBufferWriter<byte>, TextReader

Text

  • SpanTokenizer β€” zero-allocation span-based string tokenizer
  • Inflector β€” English word inflection (pluralize / singularize / camelize etc.)
  • JsonKeyCamelCaseNamingPolicy β€” System.Text.Json naming policy

Threading

  • TaskExtensions β€” Forget (fire-and-forget) and TryWaitAsync (timeout-aware wait) for Task / ValueTask

Algorithms

  • BinarySearch β€” binary search for Span<T>, arrays, List<T>, IList<T>, IReadOnlyList<T> with delegate comparers

About

πŸ€ Foundation of the Smart library family for .NET - reflection helpers, thread-safe collections, converters, IO/text utilities, threading and algorithm helpers

Topics

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages