如何在Xtend 2

时间:2015-06-03 06:55:57

标签: xtend

这就是我在Xtend课程中所写的内容:

    def getEntityList(String indct, String criterion) {
    var entities
    Switch(indct){
    case "PAR": entities = obj.getParamList.filter[definition.contains(criterion)]
    case "REF": entities = obj.getRefList.filter[definition.contains(criterion)]
    default: entities = null
    }
return entities
}

与上面的代码一样,entities是原始列表类型,我根据条件尝试进行初始化。根据条件,实体列表将具有参数或引用。 我认为这不像Perl那样直截了当,因为Xtend是一种静态类型的语言。

如何在Xtend 2中实现上述目标?

1 个答案:

答案 0 :(得分:0)

var entities = switch(indct) {
  case 'PAR': obj.getParamList.filter[definition.contains(criterion)]
  case 'REF': obj.getRefList.filter[definition.contains(criterion)]
}

entities现在将具有List<? extends "common super type of param and ref">类型。那是你要的吗?