code: func ProcessRequirementsConditions(reqs *Requirements, cvals Values) {
  	var cond string
  	var conds []string
  	if reqs == nil || len(reqs.Dependencies) == 0 {
  		return
  	}
  	for _, r := range reqs.Dependencies {
  		var hasTrue, hasFalse bool
  		cond = string(r.Condition)
  		// check for list
  		if len(cond) > 0 {
  			if strings.Contains(cond, ",") {
  				conds = strings.Split(strings.TrimSpace(cond), ",")
  			} else {
  				conds = []string{strings.TrimSpace(cond)}
  			}
  			for _, c := range conds {
  				if len(c) > 0 {
  					// retrieve value
  					vv, err := cvals.PathValue(c)
  					if err == nil {
  						// if not bool, warn
  						if bv, ok := vv.(bool); ok {
  							if bv {
  								hasTrue = true
  							} else {
  								hasFalse = true
  							}
  						} else {
  							log.Printf("Warning: Condition path '%s' for chart %s returned non-bool value", c, r.Name)
  						}
  					} else if _, ok := err.(ErrNoValue); !ok {
  						// this is a real error
  						log.Printf("Warning: PathValue returned error %v", err)
  
  					}
  					if vv != nil {
  						// got first value, break loop
  						break
  					}
  				}
  			}
  			if !hasTrue && hasFalse {
  				r.Enabled = false
  			} else if hasTrue {
  				r.Enabled = true
  
  			}
  		}
  
  	}
  
  }
docs: // ProcessRequirementsConditions disables charts based on condition path value in values