;; -*-theme-*-

;; Copyright (C) 2015  Tommi Höynälänmaa
;; Distributed under GNU Lesser General Public License version 3,
;; see file doc/LGPL-3.

(define-interface (examples sequence-list-impl)

  (import (standard-library core))

  (declare-static-method sequence-ref
			 (:param-proc (%element)
				      ((:uniform-list %element) <integer>)
				      %element pure))

  (declare-static-method sequence-length
			 (:param-proc (%element)
				      ((:uniform-list %element))
				      <integer> pure))

  (declare-static-method sequence-map
			 (:param-proc (%element)
				      ((:procedure (%element) %element pure)
				       (:uniform-list %element))
				      (:uniform-list %element)
				      pure)))

