Ada_Ru форум

Обсуждение языка Ада

[ada_ru] вызов ф-и с подкл. модуля

Оставить новое сообщение

Сообщения

Андрей Филь
[ada_ru] вызов ф-и с подкл. модуля
2018-07-19 13:49:35

прошу помочь.

main содержит основной функционал, например ф-ю print(s : string). нужно чтобы подключаемые модули могли вызывать эту ф-ю в тасках.

m1.adb

...

task body timer is

loop

print("test");

end loop;

...

procedure init ({{{print}}}) is

...

---

main.adb

with m1;

...

with mn;

 

m1.init({{{print}}});

 

к сожалению я не могу просто передать указатель на функцию аргументом в init, потом сохранить ее и использвать в таске. что посоветуете?

Добрый день,

 

Если это статическая функция, то проще

* вынести ее в отдельный пакет,

* сделать "with этот-пакет;" в "подключаемом модуле",

* а в main оставить только запуск инициализации

 

Кстати main может быть дочерним модулем пакета, как например configure-driver.adb тут:

 

https://github.com/reznikmm/matreshka/tree/master/tools/configure

Всех благ

 

PS А это не Ваш блог случайно? Очень интересно!

https://fil-andrey.blogspot.com/

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти