Ygg01 / Linguini

C# Port of fluent.rs zero-copy parser
Apache License 2.0
28 stars 8 forks source link

Refactor `FluentBundle` into several classes with `IFluentBundle` #49

Closed Ygg01 closed 10 months ago

Ygg01 commented 10 months ago

Idea: to avoid ContainsKeys() and enable extra bundle types. Using TryAdd on IDictionary is not considered safe.

Implementation:

  1. Extract common FluentBundle operations to IFluentBundle interface.
  2. Add optional net8.0 support.
  3. Add three implementations - ConcurrentBundle, NonConcurrentBundle and FrozenBundle.

NOTE: This is a breaking change.