(* Copyright (C) 1994, Digital Equipment Corporation                         *)
(* Digital Internal Use Only                                                 *)
(* All rights reserved.                                                      *)
(*                                                                           *)
(* Last modified on Thu Jul 21 12:57:43 PDT 1994 by najork                   *)
(*       Created on Fri May 27 20:32:05 PDT 1994 by najork                   *)


module BooleanPropWrap for BooleanProp;

let NameProto = clone (Prop_NameProto, {
  bind => meth (self, pv) BooleanProp_NameBind (self, pv) end
});


let ValProto = clone (Prop_ValProto, {
  getBeh => meth (self) BooleanProp_ValGetBeh (self) end,
  setBeh => meth (self, beh) BooleanProp_ValSetBeh (self, beh) end,
  get    => meth (self) BooleanProp_ValGet (self) end,
  value  => meth (self, time) BooleanProp_ValValue (self, time) end
});


let BehProto = clone (Prop_BehProto, {});
  

let ConstBehProto = clone (BehProto, {
  set => meth (self, b) BooleanProp_ConstBehSet (self, b) end
});


let SyncBehProto = clone (BehProto, {
  addRequest => 
    meth (self, req) 
      BooleanProp_SyncBehAddRequest (self, req) 
    end,
  change =>
    meth (self, b, start) 
      BooleanProp_SyncBehChange (self, b, start) 
    end
});


let AsyncBehProto = clone (BehProto, {
  compute => ok,
});


let DepBehProto = clone (BehProto, {
  compute => ok,
});


let RequestProto = clone (Prop_RequestProto, {
  value => ok,
});


end module;
