Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove allocations when parsing enums #7

Closed
kevin-montrose opened this issue May 28, 2020 · 0 comments · Fixed by #34
Closed

Remove allocations when parsing enums #7

kevin-montrose opened this issue May 28, 2020 · 0 comments · Fixed by #34
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@kevin-montrose
Copy link
Owner

There are currently no available TryParse()'s for enums that take a ReadOnlySpan<char>. This is being worked on..

Once that's landed, revisit the cases in DefaultTypeParsers where we're either allocation or "doing things the hard way".

@kevin-montrose kevin-montrose added enhancement New feature or request help wanted Extra attention is needed labels May 28, 2020
@kevin-montrose kevin-montrose changed the title Remove allocations when parsing [Flags] enums Remove allocations when parsing enums May 28, 2020
@kevin-montrose kevin-montrose linked a pull request Sep 13, 2020 that will close this issue
kevin-montrose added a commit that referenced this issue Oct 11, 2020
* move to .NET Core 3.1

* squashes 6 commits; remove some required allocations from dynamic writers, closes #30

* squashes 9 commits; removes mandatory allocations from formatting [Flags] enums, fixing #8 (#31)

* update to point to main branch

* update to point to main branch

* squashes 4 commits; removes mandatory allocations from [Flags] enum parsing, closing #7. (#34)

* Remove copying of data that happens when a range is taken of a DynamicRow (#36)

* squashes 24 commits; reworks taking ranges in dynamic rows to instead return a new type, avoiding the need to copy a whole row (which is always expensive, and often pointless).  Still need to handle disposal.

* squashes 3 commits; implements disposal on DynamicRowRange and change how DynamicRow disposal works to allow post-row-disposal use of ranges.

* implement same method restrictions on ranges as are on rows

* squashes 11 commits; expands test coverage, optimizes writing DynamicRowRanges, and fixes a number of bugs with ColumnIdentifiers.

* squashes 4 commits; fixes a subtle bug with immediately following skipped characters by a character _not_ from the pending buffer during reading.

* squashes 76 commits; reworking the benchmark project to be more scriptable, and to support running a given set of benchmark over a range of commits not just latest (#37)

* 0.7.0

* formatting

* fix debug builds

* regenerate package
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant