Skip to content

3048 Move working with modes to parsers - #3070

Merged
ewoutkramer merged 8 commits into
develop-6.0from
3048-move-working-with-modes-to-parsers
Mar 4, 2025
Merged

3048 Move working with modes to parsers#3070
ewoutkramer merged 8 commits into
develop-6.0from
3048-move-working-with-modes-to-parsers

Conversation

@ewoutkramer

@ewoutkramer ewoutkramer commented Mar 4, 2025

Copy link
Copy Markdown
Member

Fixes #3049.

Using with fixed desserialization modes was something we invented for FhirSerilizationEngines, but it turned out we really liked the concept to be useable for creating parsers in general and also for the FhirJsonConverter. To make this possible, I did the following:

  • Move the filtering logic to the json+xml deserializers
  • Simplify the code in FhirJsonConverter for modes, since it does not require acrobatics with the engines anymore.
  • Simplify the engines, since they can just rely on the parser's implementations of modes.

Since I originally started out working on #3049, there are some (minor) changes in this PR that actually are part of the future #3049.

@ewoutkramer
ewoutkramer requested a review from Kasdejong March 4, 2025 11:06

@Kasdejong Kasdejong left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Set to approve, just worried about how many people might use the assembly to construct their parsers. It is public, correct?

Comment thread src/Hl7.Fhir.Base/Serialization/BaseFhirJsonPocoDeserializer.cs
@ewoutkramer
ewoutkramer enabled auto-merge March 4, 2025 12:42
@ewoutkramer
ewoutkramer requested a review from Kasdejong March 4, 2025 12:42
@ewoutkramer
ewoutkramer merged commit 88bd309 into develop-6.0 Mar 4, 2025
@ewoutkramer
ewoutkramer deleted the 3048-move-working-with-modes-to-parsers branch March 4, 2025 15:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants