我建立使用階將篩選基於在DSL狀態數據的DSL通過拉姆達參數的名稱。查找斯卡拉
功能過濾器:
def filter(f: (Int) => (Int)) {
// find what is the name (age) of lambda passed
// query db with column name age and apply function f and return value
}
使用DSL作爲:
filter( (age) => age > 10)
我不能找到一種方法,要知道,在DSL age
時,有沒有辦法?
暫時,我傳遞的字符串作爲第一個參數如下圖所示:
filter("age", (age) => age > 10)
和改變過濾器採取的第一個參數爲列名。
我想簡化DSL。
你可以添加'filter'函數的實際實現嗎? –
這將需要一個宏(如果有可能,我不知道)。 –
如果你只是把它稱爲'filter(「age」,(_> 10))'',那麼它不會簡單嗎? –