Reduce number of config files (especially for class names) #3

Closed
opened 2 months ago by Letterus · 2 comments
Owner

Generation should be improved to work more general and reduce the number of config files (use convention instead of configuration)

  • 1. Class names to be generated may be extracted from the GIR file automatically (currently in use: global_conf.json)
  • 2. Class names to be exchanged may be generated based on general pattern (most of the GLib libs even do have prefixes) so there should be no need to manually provide src/Config/swap_types.json (depends on 4.)
  • 3. extra_methods.json is hard to read and maintain. It could easily be replaced by some ObjC Categories in BaseClasses
  • 4. Determine class dependencies to get rid of extra_imports.json. For this to succeed I need to detect circular dependencies and enable the generator to write forward declarations
Generation should be improved to work more general and reduce the number of config files (use convention instead of configuration) - [x] 1. Class names to be generated may be extracted from the GIR file automatically (currently in use: global_conf.json) - [x] 2. Class names to be exchanged may be generated based on general pattern (most of the GLib libs even do have prefixes) so there should be no need to manually provide src/Config/swap_types.json (depends on 4.) - [x] 3. `extra_methods.json` is hard to read and maintain. It could easily be replaced by some ObjC Categories in `BaseClasses` - [x] 4. Determine class dependencies to get rid of extra_imports.json. For this to succeed I need to detect circular dependencies and enable the generator to write forward declarations
Letterus added this to the First stable release of ObjGTK milestone 2 months ago
Letterus added the
enhancement
label 2 months ago
Poster
Owner

First part done with c664e26787.

First part done with c664e26787.
Poster
Owner

Second part could get a little bit more complicated because not all relations are 1-to-1,but some (Widget, Window, …?) are 1-to-n.

Second part could get a little bit more complicated because not all relations are 1-to-1,but some (Widget, Window, …?) are 1-to-n.
Letterus closed this issue 2 weeks ago
Sign in to join this conversation.
No project
No Assignees
1 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.