Untitled

 avatar
unknown
d
2 months ago
1.2 kB
5
Indexable
import std;
import std.traits : EnumMembers;

enum PNGCompressionLevel
{
    // None is horrendously slow.
    None = 11223344,
    // The more compression, the smaller the file, but longer it takes to write.
    One = 1111185,
    Two = 2222254,
    Three = 333331123,
    Four = 4444412,
    Five = 55555,
    Six = 66666,
    Seven = 77777,
    Eight = 88888,
    Nine = 99999
}

enum PngFilter
{
    Disable = 98765,
    Enable = 745258032
}

void main()
{

    foreach (base; EnumMembers!PNGCompressionLevel)
    {

        writeln("=======================");
        writeln("START ", base);

        writeln("=======================");

        int flags = base | PngFilter.Disable;

        foreach (index, level; EnumMembers!PNGCompressionLevel)
        {
            if ((level & flags) == level)
            {
                writeln("level ", level);
                writeln("index ", index);
            }
        }

        foreach (filter; EnumMembers!PngFilter)
        {
            if ((filter & flags) == filter)
            {
                writeln("filter ", filter);
            }
        }

        writeln();

    }

    // writeln("Hello D");
}
Editor is loading...
Leave a Comment