Click or drag to resize

imbSCI.Data Namespace

imbSCI | imbACE | imbNLP | imbWEM | imbWBI
The namespace provides the core layer of shared: enumerations, interfaces and extensions as well as a number of thread-safe collections and data structures.
Classes
  ClassDescription
Public classimbGraphExtensions
Public classimbSciEnumExtensions
Enum type extensions
Public classimbSciStringExtensions
Proširenja operacija nad stringovima
Remarks

The main purpose of this library is to basic set of building blocks, shared by wide range of imbVeles projects.

Here are thread-safe multidimensional collections and dictionaries consumed on many layers of the imbSCI and imbACE frameworks.

  • Extensions for: [!:String]s, [!:Enum]s, directed [!:graph]s, and paths ([!:imbPathExtensions]) - Very elementary extension methods, performing the most frequent operations.
  • imbSCI.Data.data: fundamentals - Bindable primitives, [!:Regex]-based string parsers, complex data-structure load/save mechanism and [!:Type] to [!:Type] property auto-mappings
  • imbSCI.Data.collection: multidimensional and thread-safe - Generic and non-generic directed graph, layered stacks, 2D+ relational matrices, dictionaries...
  • Common imbSCI.Data.enums and imbSCI.Data.interfaces - Mostly revolving around reporting, data annotation and core framework options
Examples
Several extensions, combined for textual representation of all flags in specified Enum en.
1String output = "";
2foreach (Enum eni in en.getEnumListFromFlags()) {
3    output = output.add(eni.toStringSafe().imbTitleCamelOperation(), ", ");
4}
See Also

Reference

Few recommended namespace members to learn more about

[!:imbSCI.Data.imbSciEnumExtensions.getEnumListFromFlags(Enum)]graphWrapNodeTItem[!:imbSCI.Data.imbGraphExtensions.getDeepest(IEnumerable<interfaces.IObjectWithPathAndChildren>, int)][!:imbSCI.Data.imbGraphExtensions.getFilterOut(IEnumerable<interfaces.IObjectWithPathAndChildren>, System.Text.RegularExpressions.Regex, System.Text.RegularExpressions.Regex)][!:imbSCI.Data.extensions.data.imbPathExtensions.getPathTo(interfaces.IObjectWithPathAndChildSelector, interfaces.IObjectWithPathAndChildSelector)]changeBindableBasegetValuesFromMappedSource(Object, propertyMap)aceEnumDictionarySet2DTEnum, TD1Key, TD2Key, TValue