// Code generated by cmd/cgo; DO NOT EDIT.

//line /home/josie/.cache/paru/clone/wiiudownloader/src/pkg/mod/github.com/gotk3/gotk3@v0.6.5-0.20240618185848-ff349ae13f56/cairo/operator.go:1:1
package cairo

// #include <stdlib.h>
// #include <cairo.h>
// #include <cairo-gobject.h>
import _ "unsafe"
import (
	"unsafe"
)

// Operator is a representation of Cairo's cairo_operator_t.
type Operator int

const (
	OPERATOR_CLEAR          Operator = ( /*line :15:37*/_Ciconst_CAIRO_OPERATOR_CLEAR /*line :15:58*/)
	OPERATOR_SOURCE         Operator = ( /*line :16:37*/_Ciconst_CAIRO_OPERATOR_SOURCE /*line :16:59*/)
	OPERATOR_OVER           Operator = ( /*line :17:37*/_Ciconst_CAIRO_OPERATOR_OVER /*line :17:57*/)
	OPERATOR_IN             Operator = ( /*line :18:37*/_Ciconst_CAIRO_OPERATOR_IN /*line :18:55*/)
	OPERATOR_OUT            Operator = ( /*line :19:37*/_Ciconst_CAIRO_OPERATOR_OUT /*line :19:56*/)
	OPERATOR_ATOP           Operator = ( /*line :20:37*/_Ciconst_CAIRO_OPERATOR_ATOP /*line :20:57*/)
	OPERATOR_DEST           Operator = ( /*line :21:37*/_Ciconst_CAIRO_OPERATOR_DEST /*line :21:57*/)
	OPERATOR_DEST_OVER      Operator = ( /*line :22:37*/_Ciconst_CAIRO_OPERATOR_DEST_OVER /*line :22:62*/)
	OPERATOR_DEST_IN        Operator = ( /*line :23:37*/_Ciconst_CAIRO_OPERATOR_DEST_IN /*line :23:60*/)
	OPERATOR_DEST_OUT       Operator = ( /*line :24:37*/_Ciconst_CAIRO_OPERATOR_DEST_OUT /*line :24:61*/)
	OPERATOR_DEST_ATOP      Operator = ( /*line :25:37*/_Ciconst_CAIRO_OPERATOR_DEST_ATOP /*line :25:62*/)
	OPERATOR_XOR            Operator = ( /*line :26:37*/_Ciconst_CAIRO_OPERATOR_XOR /*line :26:56*/)
	OPERATOR_ADD            Operator = ( /*line :27:37*/_Ciconst_CAIRO_OPERATOR_ADD /*line :27:56*/)
	OPERATOR_SATURATE       Operator = ( /*line :28:37*/_Ciconst_CAIRO_OPERATOR_SATURATE /*line :28:61*/)
	OPERATOR_MULTIPLY       Operator = ( /*line :29:37*/_Ciconst_CAIRO_OPERATOR_MULTIPLY /*line :29:61*/)
	OPERATOR_SCREEN         Operator = ( /*line :30:37*/_Ciconst_CAIRO_OPERATOR_SCREEN /*line :30:59*/)
	OPERATOR_OVERLAY        Operator = ( /*line :31:37*/_Ciconst_CAIRO_OPERATOR_OVERLAY /*line :31:60*/)
	OPERATOR_DARKEN         Operator = ( /*line :32:37*/_Ciconst_CAIRO_OPERATOR_DARKEN /*line :32:59*/)
	OPERATOR_LIGHTEN        Operator = ( /*line :33:37*/_Ciconst_CAIRO_OPERATOR_LIGHTEN /*line :33:60*/)
	OPERATOR_COLOR_DODGE    Operator = ( /*line :34:37*/_Ciconst_CAIRO_OPERATOR_COLOR_DODGE /*line :34:64*/)
	OPERATOR_COLOR_BURN     Operator = ( /*line :35:37*/_Ciconst_CAIRO_OPERATOR_COLOR_BURN /*line :35:63*/)
	OPERATOR_HARD_LIGHT     Operator = ( /*line :36:37*/_Ciconst_CAIRO_OPERATOR_HARD_LIGHT /*line :36:63*/)
	OPERATOR_SOFT_LIGHT     Operator = ( /*line :37:37*/_Ciconst_CAIRO_OPERATOR_SOFT_LIGHT /*line :37:63*/)
	OPERATOR_DIFFERENCE     Operator = ( /*line :38:37*/_Ciconst_CAIRO_OPERATOR_DIFFERENCE /*line :38:63*/)
	OPERATOR_EXCLUSION      Operator = ( /*line :39:37*/_Ciconst_CAIRO_OPERATOR_EXCLUSION /*line :39:62*/)
	OPERATOR_HSL_HUE        Operator = ( /*line :40:37*/_Ciconst_CAIRO_OPERATOR_HSL_HUE /*line :40:60*/)
	OPERATOR_HSL_SATURATION Operator = ( /*line :41:37*/_Ciconst_CAIRO_OPERATOR_HSL_SATURATION /*line :41:67*/)
	OPERATOR_HSL_COLOR      Operator = ( /*line :42:37*/_Ciconst_CAIRO_OPERATOR_HSL_COLOR /*line :42:62*/)
	OPERATOR_HSL_LUMINOSITY Operator = ( /*line :43:37*/_Ciconst_CAIRO_OPERATOR_HSL_LUMINOSITY /*line :43:67*/)
)

func marshalOperator(p uintptr) (interface{}, error) {
	c := ( /*line :47:7*/_Cfunc_g_value_get_enum /*line :47:24*/)((* /*line :47:28*/_Ctype_GValue /*line :47:36*/)(unsafe.Pointer(p)))
	return Operator(c), nil
}
