From 8d13441dfb3d2bedbe8af204716272c56db1b120 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Sun, 10 Nov 2019 11:03:58 +0100 Subject: [PATCH] mes: srfi-9: Guile interface compliancy. * mes/module/srfi/srfi-9-struct.mes (record-accessor): Rename from record-getter. Update users. * mes/module/srfi/srfi-9-vector.mes (record-modifier): Rename from record-setter. Update users. * mes/module/srfi/srfi-9/gnu-struct.mes: Update. --- mes/module/srfi/srfi-9-struct.mes | 14 +++++++------- mes/module/srfi/srfi-9-vector.mes | 12 ++++++------ mes/module/srfi/srfi-9/gnu-struct.mes | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/mes/module/srfi/srfi-9-struct.mes b/mes/module/srfi/srfi-9-struct.mes index 0d4f50da..eee64691 100644 --- a/mes/module/srfi/srfi-9-struct.mes +++ b/mes/module/srfi/srfi-9-struct.mes @@ -75,7 +75,7 @@ (display " ") (display field) (display ": ") - (display ((record-getter vtable field) o))) + (display ((record-accessor vtable field) o))) fields)) (display ">")) @@ -87,21 +87,21 @@ (define-macro (define-record-accessor type field) `(begin - (define ,(cadr field) ,(record-getter type (car field))) + (define ,(cadr field) ,(record-accessor type (car field))) (if ,(pair? (cddr field)) - (define ,(if (pair? (cddr field)) (caddr field)) ,(record-setter type (car field)))))) + (define ,(if (pair? (cddr field)) (caddr field)) ,(record-modifier type (car field)))))) -(define (record-getter type field) +(define (record-accessor type field) (let ((i (record-field-index type field))) (lambda (o . field?) - (if (not (eq? (record-type o) (record-type type))) (error "record getter: record expected" type o) + (if (not (eq? (record-type o) (record-type type))) (error "record accessor: record expected" type o) (if (pair? field?) field (struct-ref o i)))))) -(define (record-setter type field) +(define (record-modifier type field) (let ((i (record-field-index type field))) (lambda (o v) - (if (not (eq? (record-type o) (record-type type))) (error "record setter: record expected" type o) + (if (not (eq? (record-type o) (record-type type))) (error "record modifier: record expected" type o) (struct-set! o i v))))) (define (record-field-index type field) diff --git a/mes/module/srfi/srfi-9-vector.mes b/mes/module/srfi/srfi-9-vector.mes index 205c9d6a..3cfd1af5 100644 --- a/mes/module/srfi/srfi-9-vector.mes +++ b/mes/module/srfi/srfi-9-vector.mes @@ -72,21 +72,21 @@ (define-macro (define-record-accessor type field) `(begin - (define ,(cadr field) ,(record-getter type (car field))) + (define ,(cadr field) ,(record-accessor type (car field))) (if ,(pair? (cddr field)) - (define ,(if (pair? (cddr field)) (caddr field)) ,(record-setter type (car field)))))) + (define ,(if (pair? (cddr field)) (caddr field)) ,(record-modifier type (car field)))))) -(define (record-getter type field) +(define (record-accessor type field) (let ((i (record-field-index type field))) (lambda (o . field?) - (if (not (eq? (record-type o) type)) (error "record getter: record expected" type o) + (if (not (eq? (record-type o) type)) (error "record accessor: record expected" type o) (if (pair? field?) field (vector-ref o i)))))) -(define (record-setter type field) +(define (record-modifier type field) (let ((i (record-field-index type field))) (lambda (o v) - (if (not (eq? (record-type o) type)) (error "record setter: record expected" type o) + (if (not (eq? (record-type o) type)) (error "record modifier: record expected" type o) (vector-set! o i v))))) (define (record-field-index type field) diff --git a/mes/module/srfi/srfi-9/gnu-struct.mes b/mes/module/srfi/srfi-9/gnu-struct.mes index a8d97fb2..8729dc02 100644 --- a/mes/module/srfi/srfi-9/gnu-struct.mes +++ b/mes/module/srfi/srfi-9/gnu-struct.mes @@ -32,7 +32,7 @@ (set (getter ,o #t))) (define (field->value field) (if (eq? set field) ,value - ((record-getter type field) ,o))) + ((record-accessor type field) ,o))) (let* ((fields (record-field-names type)) (values (map field->value fields))) (apply (record-constructor type fields) values)))))