Есть ли какой-нибудь способ, которым я могу использовать содержимое файла, которое содержит значение счетчика (идентификатор приращения для системы базы данных), как обычное целое число?
Мы пытаемся создать небольшую систему баз данных в Haskell, и нам нужно отслеживать идентификаторы приращений таблиц. Мы решили, что единственный «простой» способ сделать это - сохранить их в текстовом файле. Однако при их получении тип возвращаемого значения будет IO Int
. Наше определение таблицы базы данных требует Int
для идентификатора.
Кто-нибудь знает, как использовать идентификатор приращения (или целочисленное значение в целом) из текстового файла для экземпляра класса, для которого требуется значение Int
?
Заранее спасибо!
EDIT: пример кода, иллюстрирующего проблему:
data SomeTable = SomeTable { id :: Int, testField :: String }
someRow = SomeTable (generateNextId "SomeTable") "Test"
Где generateNextId
читает идентификатор текущего приращения из файла (и поэтому имеет тип IO Int
, а не Int
).