code: func (v *evalVisitor) evalMethod(ctx reflect.Value, name string, exprRoot bool) (reflect.Value, bool) {
  	if ctx.Kind() != reflect.Interface && ctx.CanAddr() {
  		ctx = ctx.Addr()
  	}
  
  	method := ctx.MethodByName(name)
  	if !method.IsValid() {
  		// example: subject() => Subject()
  		method = ctx.MethodByName(strings.Title(name))
  	}
  
  	if !method.IsValid() {
  		return zero, false
  	}
  
  	return v.evalFieldFunc(name, method, exprRoot), true
  }
docs: // evalFieldFunc tries to evaluate given method name, and a boolean to indicate if this was a method call