Можно ли использовать имя записи в качестве параметра?

Допустим, у меня есть запись:

-record(foo, {bar}).

Я бы хотел передать имя записи функции в качестве параметра и получить обратно новую запись. Функция должна быть универсальной, чтобы она могла принимать любую запись, примерно так.

make_record(foo, [bar], ["xyz"])

При реализации такой функции я пробовал следующее:

make_record(RecordName, Fields, Values) ->
    NewRecord = #RecordName{} %% this line gives me an error: syntax error before RecordName

Можно ли использовать имя записи в качестве параметра?

7
задан Lii 26 March 2018 в 09:48
поделиться