中断多行函数调用

时间:2017-03-27 16:15:21

标签: go

我正在开发一个用于mysql的库/包装器。对于我的API的使用,我想象的是:

model
    .Select("INTERNAL_ID")
    .Select("EXTERNAL_ID")
    .Find(1);

例如,以下功能:

func (model SQLModel) Select(selectString string) SQLModel 
func (model SQLModel) Find(id int) interface{}

问题在于我无法将我的函数调用分成多行,因为go / fmt会在每次休息时抱怨:syntax error: unexpected ., expecting }

现在,我可以去:

model.Select("INTERNAL_ID").Select("EXTERNAL_ID").Find(1)

但随着API的增长(在哪里,加入,求和等......),它将很快变得难以阅读。

那么,如何在GO中分割函数调用?

谢谢,

1 个答案:

答案 0 :(得分:6)

点必须位于行尾:

model.
    Select("INTERNAL_ID").
    Select("EXTERNAL_ID").
    Find(1)