Language: Go
Label: vulnerable
CWE: NVD-CWE-noinfo \u2014 

Code:
func matchPredicateType(sig oci.Signature, expectedPredicateType string) (bool, string, error) {
	if expectedPredicateType != "" {
		statement, _, err := decodeStatement(sig)
		if err != nil {
			return false, "", fmt.Errorf("failed to decode predicateType: %w", err)
		}

		if pType, ok := statement["predicateType"]; ok {
			if pType.(string) == expectedPredicateType {
				return true, pType.(string), nil
			}
		}
	}
	return false, "", nil
}