Я хочу передать аргументы конфигурации классу. Это все необязательные переменные, которые входят в настройку класса - и должны иметь возможность работать в любом порядке.
на данный момент я просто регулярно прохожу через дополнительные переменные. Предположим, что конструктор был похож на:
private var _reqVar:String;
private var _optVar1:String;
private var _optVar2:String;
public function Constructor(reqVar:String, optVar1:String = "empty", optVar2:String = "empty){
// set the variable to equal the arguments here...
}
проблема с этим для конечного пользователя, где создание экземпляра класса не особенно читаемо (особенно когда список аргументов может стать довольно большим)
в идеале я хотел бы передать аргументы, хотя и похожие на это:
var instance:ClassType = new ClassType(reqVar, {width:100, height:100, speed:4, lives:3})
, что опять-таки довольно просто. где я натыкаюсь на следующие пункты:
- присвоение аргумента переменной var того же ключа (я знаю, что в php для ссылки на имя переменной из ключа вы можете использовать $$ key = $ value, есть ли эквивалент в as3?)
- отображать ошибку (используя метод throw) для имен переменных, не поддерживаемых классом
любая помощь приветствуется.