/usr/share/guile/database/postgres-col-defs.scm is in guile-pg 0.16-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | ;;; postgres-col-defs.scm --- column definitions
;; Guile-pg - A Guile interface to PostgreSQL
;; Copyright (C) 2002, 2003 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2 of the License, or
;; (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
;;; Author: Thien-Thi Nguyen <ttn@gnu.org>
;;; Commentary:
;; This module exports the procs:
;; (column-name DEF) => symbol
;; (type-name DEF) => symbol
;; (type-options DEF) => list of strings
;; (objectifiers DEFS) => list of objectifier procedures
;; (stringifiers DEFS) => list of stringifier procedures
;;
;; DEF is a single column definition. DEFS is a list of column definitions.
;;; Code:
(define-module (database postgres-col-defs)
:use-module ((database postgres-types)
:select (dbcoltype-lookup
dbcoltype:objectifier
dbcoltype:stringifier))
:export (column-name
type-name
type-options
objectifiers
stringifiers))
;; Extract column name from @var{def}.
(define (column-name def)
(car def))
;; Extract type name from @var{def}.
(define (type-name def)
(let ((type-info (cdr def)))
(if (pair? type-info)
(car type-info)
type-info)))
;; Extract type options from @var{def}.
(define (type-options def)
(let ((type-info (cdr def)))
(if (pair? type-info)
(cdr type-info)
'())))
;; Return a list of objectifiers associated with the types in @var{defs}.
(define (objectifiers defs)
(map dbcoltype:objectifier
(map dbcoltype-lookup
(map type-name defs))))
;; Return a list of stringifiers associated with the types in @var{defs}.
(define (stringifiers defs)
(map dbcoltype:stringifier
(map dbcoltype-lookup
(map type-name defs))))
;;; postgres-col-defs.scm ends here
|