api: Replace set_var(name, NIL) with del_var(name)

This commit is contained in:
ZyX
2016-02-11 02:01:17 +03:00
parent af6603a6b4
commit f1ced96c28
11 changed files with 110 additions and 17 deletions

View File

@@ -423,7 +423,7 @@ Object buffer_get_var(Buffer buffer, String name, Error *err)
return dict_get_value(buf->b_vars, name, err);
}
/// Sets a buffer-scoped (b:) variable. 'nil' value deletes the variable.
/// Sets a buffer-scoped (b:) variable
///
/// @param buffer The buffer handle
/// @param name The variable name
@@ -438,7 +438,24 @@ Object buffer_set_var(Buffer buffer, String name, Object value, Error *err)
return (Object) OBJECT_INIT;
}
return dict_set_value(buf->b_vars, name, value, err);
return dict_set_value(buf->b_vars, name, value, false, err);
}
/// Removes a buffer-scoped (b:) variable
///
/// @param buffer The buffer handle
/// @param name The variable name
/// @param[out] err Details of an error that may have occurred
/// @return The old value
Object buffer_del_var(Buffer buffer, String name, Error *err)
{
buf_T *buf = find_buffer_by_handle(buffer, err);
if (!buf) {
return (Object) OBJECT_INIT;
}
return dict_set_value(buf->b_vars, name, NIL, true, err);
}
/// Gets a buffer option value