У меня есть отличный сценарий DSL, как это:
entity(attribute1:"one", attribute2:"two")
пока все хорошо. Я запускаю сценарий и устанавливаю делегат сценария для класса, в котором определена сущность, и этот класс обрабатывает все.
Теперь я хочу сделать это:
entity(attibute1:(subattribute1:"one", subattribute2:"two"))
Возможно ли это как-то синтаксически возможно? Поскольку (subattribute1: "one", subattribute2: "two") само по себе ничего не значит, я предполагаю, что нет, хотя мне интересно, есть ли какая-то магия Groovy, о которой я не знаю, которая позволяет это.
А я не хочу делать
entity(attibute1:[subattribute1:"one", subattribute2:"two"])
хотя я знаю, что это работает. Просто предпочтение синтаксиса.