// Code generated by "stringer -type=Class"; DO NOT EDIT.

package gc

import "fmt"

const _Class_name = "PxxxPEXTERNPAUTOPAUTOHEAPPPARAMPPARAMOUTPFUNCPDISCARD"

var _Class_index = [...]uint8{0, 4, 11, 16, 25, 31, 40, 45, 53}

func (i Class) String() string {
	if i >= Class(len(_Class_index)-1) {
		return fmt.Sprintf("Class(%d)", i)
	}
	return _Class_name[_Class_index[i]:_Class_index[i+1]]
}
