dss-extensions / dss-extensions/OpenDSSDirect.jl

Enums and bitmasks

Open
#76 3 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Julia
Stars
30
Forks
6
PR merge metrics
No merged PRs in 30d

Description

A few enumerations are used in bitmasks or mixed enum+mask. Currently, `CEnum` doesn't allow this.

An interim fix was added for `Monitors.Mode` in https://github.com/dss-extensions/OpenDSSDirect.jl/pull/75 (just allow integers without restricting to the enum values), but a more elegant solution would be better. I also noticed a few projects vendor CEnum and modify it, for example https://github.com/JuliaGPU/VulkanCore.jl/pull/17/files

Looking for alternative packages, so far I found https://github.com/jmert/BitFlags.jl
Should we adopt it here?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the interim Monitors.Mode fix in pull request #75 and how CEnum currently handles enum values. Compare that behavior with BitFlags.jl and the cited VulkanCore.jl modification. Done means deciding and documenting an approach for the affected enum-and-bitmask cases, including whether BitFlags.jl should be adopted.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.