Калькулятор стекового типа с динамически подключаемыми операциями.
Требуется скомпилированный класс, который будет наследовать
org.polushin.fcalc.CalcOperation
И реализовывать запрашиваемый им метод. Реализовываему методу передается текущее состояние окружения калькулятора, которое включает в себя стек и определенные замены для чисел в глобальной области видимости.
Class-файл нужно поместить вместе со всей package-структурой в отдельное место. Все операции находятся в отдельных классах, но в одном общем корне и описываются в файле *.conf
На первой строке указан путь до корневого каталога, где лежат *.class файлы операции.
На последующих строках через пробел указана операция и класс, который ее реализует.
Примеры реализаций операций можно посмотреть в FactoryOperations.
- operations.conf — Файл конфигурации для данных операций. В нем указано, где должны будут находиться *.class файлы реализаций.
- src — Исходные коды, примеры реализации операций.
java -jar calc.jar [-i] [input] <operations>
Например:
java -jar calc.jar -i simple_opers.ops operations.conf