Предотвращение вызова символа по требованию в Clojure - PullRequest
0 голосов
/ 12 января 2020

Итак, вот моя проблема,

У меня есть файл sample.clj в пространстве имен abc.xyz, в котором я вызываю метод db init непосредственно перед выполнением любой операции CRUD.

(db/init some-config)

Когда мне требуется это пространство имен abc.xyz в тестовом пространстве имен cdf.qpr как (:require [abc.xyz :refer :all]), дБ уже инициализируется с some-config, но я хочу инициализировать его с some-other-config.

Как мне потребовать запретить вызов пространства имен db/init

1 Ответ

2 голосов
/ 12 января 2020

Без изменения кода в пространстве имен abc.xyz, в частности, изменения строки (db/init some-config), то, о чем вы спрашиваете, невозможно.

Более продуктивным подходом было бы спросить: «Как другие люди справляются с этим? ситуации, когда в их пространствах имен нет выражений верхнего уровня, таких как (db/init some-config)? Я подозреваю, что большинство таких вызовов вызывают не выражения верхнего уровня в своих пространствах имен, а внутри некоторой функции init для всего приложения.

...