Попытка использовать функцию в Data.Map.hs, но она говорит, что не находится в области видимости ... Это из-за определения #if (TESTING) - PullRequest
0 голосов
/ 23 марта 2012

В Data.Map есть некоторые функции, такие как merge, glue, которые я хочу использовать, но компилятор говорит, что они не входят в область видимости. Я замечаю вверху они перечислены здесь:

#if defined(TESTING)
            -- * Internals
            , bin
            , balanced
            , join
            , merge
#endif

Я думаю, что это означает, что я не могу использовать их напрямую, если только я не определил ТЕСТИРОВАНИЕ, но я понятия не имею, как это сделать и где. Пожалуйста, ответьте, как будто я отсталый; не думайте, что я знаю, что вы хотите напечатать что-то в командной строке вместо того, чтобы вводить это в программе.

Я на Windows XP и использую GHCi, если это имеет значение.

1 Ответ

3 голосов
/ 23 марта 2012

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

Внутренняя древовидная структура карты не должна относиться к тому, кто использует код, поэтому это сложносказать, что было бы лучшим решением без какой-либо конкретной информации о том, что вы пытаетесь сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...