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

Design and create schema and associated codegen tooling #239

Open
iboB opened this issue Jan 29, 2025 · 0 comments
Open

Design and create schema and associated codegen tooling #239

iboB opened this issue Jan 29, 2025 · 0 comments
Labels
main Main issue with sub-issues and associated project

Comments

@iboB
Copy link
Member

iboB commented Jan 29, 2025

Project for main issue

Motivation: #240

This task has multiple directions:

  • Language - what language should we use to describe the schema
  • Codegen - we will switch to a declarative plain-text source for schemas and use codegen to create the internal struct serialization. The codegen tool must allow plugins for multiple languages. The core and C++ generator will be hosted here, and generators for other languages in their respective repositories.
    • For C++ this will likely be based on template helpers which can use the generated code to perform i/o
    • C++-only helpers for provider implementation also need to be created
  • Distribution - tooling to fetch schemas and integrate them into a build process
  • Design - what actually goes into a schema, how it's structured and how it's presented. The meaning of different schema items and how they affect frame io. Discussion here Schema design #242
@iboB iboB added the main Main issue with sub-issues and associated project label Jan 29, 2025
@iboB iboB added this to Schema Jan 29, 2025
@github-project-automation github-project-automation bot moved this to Todo in Schema Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
main Main issue with sub-issues and associated project
Projects
Status: Todo
Development

No branches or pull requests

1 participant