Branch: Tag:

2000-01-25

2000-01-25 18:06:51 by Martin Nilsson <mani@lysator.liu.se>

Less logic in extend_scope. It now only extend scopes

Rev: server/etc/modules/RXML.pmod/module.pmod:1.34

2:   //!   //! Created 1999-07-30 by Martin Stjernholm.   //! - //! $Id: module.pmod,v 1.33 2000/01/25 16:44:10 nilsson Exp $ + //! $Id: module.pmod,v 1.34 2000/01/25 18:06:51 nilsson Exp $      //! Kludge: Must use "RXML.refs" somewhere for the whole module to be   //! loaded correctly.
623:    else scopes[scope_name] = vars;    }    -  void extend_scope (string scope_name, SCOPE_TYPE vars) +  int extend_scope (string scope_name, SCOPE_TYPE vars)    //! Adds or extends the specified scope at a global level. -  +  //! Returns 1 on success and 0 on failure.    {    if (!exist_scope(scope_name)) {    add_scope (scope_name, vars); -  return ; +  return 1;    } -  if (objectp(vars)) { -  if (!mappingp(scopes[scope_name])) { -  add_scope (scope_name, vars); -  return; +  if (!mappingp(vars)) { +  return 0;    } -  mapping tmp = scopes[scope_name]; -  add_scope (scope_name, vars); -  vars = tmp; -  } +     foreach (indices(vars), string var)    set_var(var, vars[var], scope_name); -  +  return 1;    }       void remove_scope (string scope_name)