I have a static foreach that goes through the parameter list and if it sees a class like "rotate", ideally, I want it to mark a boolean "has_rotate=true"

Then simply later on, once I've parsed the list, I pick an output path:

    static if(has_rotate && has_position && has_scale)
    {
    //call C function al_draw_rotated_scaled_bitmap(...);
    }

So I pass a bunch of "options" and then based on those options, it picks the right function to call instead of me manually writing draw_fixed_centered_rotated_scaled_colored_compressed_bitmap() manually.

The problem is, I can foreach through those parameters all just fine... but I can't "set" a marker.

The error message makes perfect sense in retrospect:

     variable has_position cannot be read at compile time

has_position isn't a static/compile-time variable. The question is... do they exist in D? Because otherwise, I'll be going from a really clean, elegant solution that simply passes through each parameter, and then reacts to the combined result, and end up with something that has to "step toward" the result, or perhaps, test every possible permutation individually--so as to not need variables.

Reply via email to