func1(func2)
→
func1(func2).value
→
func1(obj.fun)
→
func1(obj.fun).value
→