четверг, 9 марта 2023 г.

Сделал функцию calc_hash

 Сделал функцию calc_hash. Теперь она вызывается с параметром - строкой:

calc_hash "some text"

Возращаемый параметр имеет тип Hash и в данном варианте он помещается на стек.

Теперь хочу добавить переменные - чтобы можно было вызывать функцию так:

Hash myhash = calc_hash "some text"

При вызове функции параметр может быть обязательным или опциональным. Нужно только добавить значение по умолчанию.

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

Пока это у меня ещё не сделано, но раз я собираюсь добавить присваивание значения переменной, то нужно будет это реализовать.

Таким образом в функции появляется оператор return со списком возвращаемых параметров.

Значит мне нужно сделать такой синтаксис:

Type1 var1 Type2 var2 Type3 var3 = some_func param1 param2 param3

И тогда, если функция возвращает несколько значений, а переменных меньше, то лишние значения надо либо игнорировать, либо помещать на стек. Наверное для совместимости лучше игнорировать. Ведь, если число результатов изменится, то это никак не повлияет на вызывающий код.


Комментариев нет: