Server code - kit

  class kit_srv : public handler_srv, _crob(hush,kit) {
  public:
      kit_srv(kit* tk) : handler_srv(tk) { }
  
      virtual void source( const char* s, ENV ) {
          char* p = new char[strlen(s)+1]; strcpy(p,s);
          _body()->source(p);
          }
      virtual void eval( const char* s, ENV ) {
          _body()->eval(s); 
          }
      virtual hush::term* result( ENV ) { 
          term* x = (term*) _body()->result(); 
          hush::term* res = new term_srv(x);
          res->_duplicate(); // orbix 1.3
          return res;
          }
      virtual void update( ENV ) { _body()->update(); }
  
      virtual hush::widget* root( ENV );
  
  protected:
      kit* _body() { return (kit*) handler_srv::_body(); }
  };
  
  

slide: Server code - kit