; Copyright (C) 2006, Ephemeral Security, LLC
; 
; This library is free software; you can redistribute it and/or modify it 
; under the terms of the GNU Lesser General Public License, version 2.1
; as published by the Free Software Foundation.
; 
; This library 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 Lesser General Public License 
; for more details.
; 
; You should have received a copy of the GNU Lesser General Public License 
; along with this library; if not, write to the Free Software Foundation, 
; Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 

(module "mosref/prop/platform")

(import "lib/build")
(import "mosref/node")
(import "mosref/parse")
(import "mosref/format")

(define-prop (platform plat pl)
             doc: "Designates the MOSVM platform for the specified host; this"
                  " property determines what variant of the Mosquito virtual"
                  " machine will be employed when constructing an executable"
                  " for the drone's host environment."

             valid: (unless (string? value)
                      (send-err "expected a platform string, not "
                                (format value) "."))
                    (or (read-platform-stub value)
                        (send-err "the console does not have a stub for " 
                                  value ".")))
            
            
(define (node-platform node) (find-node-prop node 'platform))

(define (set-node-platform! node value) (set-node-prop! node 'platform value))

(export node-platform set-node-platform!)
