Is there a better way to do this:
typedef enum {
GTK_JUNCTION_NONE = 0,
GTK_JUNCTION_CORNER_TOPLEFT = 1 << 0,
GTK_JUNCTION_CORNER_TOPRIGHT = 1 << 1,
GTK_JUNCTION_CORNER_BOTTOMLEFT = 1 << 2,
GTK_JUNCTION_CORNER_BOTTOMRIGHT = 1 << 3,
GTK_JUNCTION_TOP = (GTK_JUNCTION_CORNER_TOPLEFT | GTK_JUNCTION_CORNER_TOPRIGHT),
GTK_JUNCTION_BOTTOM = (GTK_JUNCTION_CORNER_BOTTOMLEFT | GTK_JUNCTION_CORNER_BOTTOMRIGHT),
GTK_JUNCTION_LEFT = (GTK_JUNCTION_CORNER_TOPLEFT | GTK_JUNCTION_CORNER_BOTTOMLEFT),
GTK_JUNCTION_RIGHT = (GTK_JUNCTION_CORNER_TOPRIGHT | GTK_JUNCTION_CORNER_BOTTOMRIGHT)
} GtkJunctionSides;
in Perl6, without doing this:
our enum GtkJunctionSides is export (
GTK_JUNCTION_NONE => 0,
GTK_JUNCTION_CORNER_TOPLEFT => 1,
GTK_JUNCTION_CORNER_TOPRIGHT => 2,
GTK_JUNCTION_CORNER_BOTTOMLEFT => 4,
GTK_JUNCTION_CORNER_BOTTOMRIGHT => 8,
GTK_JUNCTION_TOP => 1 + 2,
GTK_JUNCTION_BOTTOM => 4 + 8,
GTK_JUNCTION_LEFT => 1 + 4,
GTK_JUNCTION_RIGHT => 2 + 8
);