private/runtime/runtime.ss
#lang scheme/base

(require "exceptions.ss" "operator.ss" "value.ss")

(define original-eval? (make-parameter #t))

;; make-frame : hash-table -> object
(define (make-frame table)
  (build-object table))

(provide original-eval?
         make-frame
         (all-from-out "exceptions.ss")
         (all-from-out "operator.ss"))

;; from exceptions.ss:
(provide (struct-out exn:runtime))

;; from value.ss:
(provide current-this)
(provide bit-field make-bit-field bit-flag-set?)
(provide READ-ONLY? DONT-ENUM? DONT-DELETE?)
(provide ref? deref set-ref! delete-ref!)
(provide (struct-out object)
         (struct-out array)
         (struct-out attributed)
         function?)
(provide has-property? has-property?/immediate has-attribute?
         object-table build-object0 object-get object-set! object-put! object-delete! object-keys object-keys* object-keys-stream)
(provide scope-chain-get scope-chain-set! scope-chain-delete!)
(provide call)
(provide completion->value completion->string
         value->boolean value->string value->object value->primitive
         value->number value->integer value->int32 value->uint32 value->uint16)
(provide true-value?)
(provide current-completion complete!)
(provide build-object build-array build-function)
(provide make-arguments-object)
(provide global-object)