Mercurial > octave
view liboctave/system/oct-group.cc @ 21102:dfcb9d74b253
Rename local gripe_XXX functions to err_XXX or warn_XXX.
* graphics.cc (err_set_invalid): Add OCTAVE_NORETURN attribute.
* graphisc.cc: Rename gripe_set_invalid to err_set_invalid.
* jit-typeinfo.cc (err_bad_result): Rename from gripe_bad_result.
* load-save.cc (err_file_open): Rename from gripe_file_open.
* ls-mat5.cc (warn_dim_too_large): Rename from gripe_dim_too_large.
* oct-stream.cc (err_invalid_file_id): Rename from gripe_invalid_file_id.
* txt-eng-ft.cc (warn_missing_glyph, warn_glyph_render): Rename from
gripe_missing_glyph, gripe_glyph_render.
* xpow.cc: Add FIXME about strange gripe_failed_diagonalization function.
* ov-base-int.cc, ov-bool-mat.cc, ov-bool-sparse.cc, ov-bool.cc, ov-cell.cc,
ov-class.cc, ov-complex.cc, ov-cx-mat.cc, ov-cx-sparse.cc, ov-fcn-handle.cc,
ov-fcn-inline.cc, ov-float.cc, ov-flt-complex.cc, ov-flt-cx-mat.cc,
ov-flt-re-mat.cc, ov-range.cc, ov-re-mat.cc, ov-re-sparse.cc, ov-scalar.cc,
ov-str-mat.cc, ov-struct.cc
(warn_load, warn_save):
ov-base.cc (warn_load, warn_save, err_indexed_assignment,
err_assign_conversion_failed, err_no_conversion): Rename from gripe_XXX
version.
* ov-base.h (warn_load, warn_save): Rename from gripe_load, gripe_save.
* ov-classdef.cc (err_method_access, err_property_access): Rename from
gripe_method_access, gripe_property_access.
* ov-classdef.h (err_invalid_object): Rename from gripe_invalid_object.
* ov-oncleanup.h (gripe_internal): Delete function. Place single calling
instance directly in code.
* ov.cc (err_binary_op, err_binary_op_conv, err_unary_op, err_unary_op_conv,
err_unary_op_conversion_failed): Add OCTAVE_NORETURN attribute. Rename from
gripe_XXX.
* ov.cc (err_cat_op, err_cat_op_conv, ): Rename from gripe_XXX.
* lex.h (warn_single_quote_string, warn_language_extension,
maybe_warn_language_extension_comment, warn_language_extension_continuation,
warn_language_extension_operator): Rename from gripe_XXX.
* lex.ll (warn_single_quote_string, warn_language_extension,
maybe_warn_language_extension_comment, warn_language_extension_continuation,
warn_language_extension_operator): Rename from gripe_XXX.
* pt-check.cc (errmsg): Rename from gripe.
* pt-check.h (errmsg): Add OCTAVE_NORETURN attribute. Rename from gripe.
* PermMatrix.cc (err_invalid_permutation): Add OCTAVE_NORETURN attribute.
Rename from gripe_invalid_permutation.
* idx-vector.cc (err_invalid_range): Add OCTAVE_NORETURN attribute.
Rename from gripe_invalid_range.
liboctave/numeric/lo-specfun.cc (err_betainc_nonconformant): Add
OCTAVE_NORETURN attribute. Rename from gripe_betainc_nonconformant.
* oct-group.cc (err_invalid): New static function.
* oct-group.h (gripe_invalid): Delete private function.
* oct-passwd.cc (err_invalid): New static function.
* oct-passwd.h (gripe_invalid): Delete private function.
* data-conv.cc (err_unrecognized_float_fmt): Add OCTAVE_NORETURN attribute.
Rename from gripe_unrecognized_float_fmt.
* lo-cutils.c (warn_missing_wait_macro): Rename from gripe_missing_wait_macro.
* unwind-prot.cc (err_unhandled_exception): Rename from gripe_exception.
* unwind-prot.h (err_unhandled_exception): Rename from gripe_exception.
author | Rik <rik@octave.org> |
---|---|
date | Mon, 18 Jan 2016 21:06:26 -0800 |
parents | 93748bcaec17 |
children | f7121e111991 |
line wrap: on
line source
/* Copyright (C) 1996-2015 John W. Eaton This file is part of Octave. Octave is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. Octave 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 General Public License for more details. You should have received a copy of the GNU General Public License along with Octave; see the file COPYING. If not, see <http://www.gnu.org/licenses/>. */ #ifdef HAVE_CONFIG_H #include <config.h> #endif #include <sys/types.h> #ifdef HAVE_GRP_H #include <grp.h> #endif #include "lo-error.h" #include "oct-group.h" #include "str-vec.h" #define NOT_SUPPORTED(nm) \ nm ": not supported on this system" OCTAVE_NORETURN static void err_invalid (void) { (*current_liboctave_error_handler) ("invalid group object"); } std::string octave_group::name (void) const { if (! ok ()) err_invalid (); return gr_name; } std::string octave_group::passwd (void) const { if (! ok ()) err_invalid (); return gr_passwd; } gid_t octave_group::gid (void) const { if (! ok ()) err_invalid (); return gr_gid; } string_vector octave_group::mem (void) const { if (! ok ()) err_invalid (); return gr_mem; } octave_group octave_group::getgrent (void) { std::string msg; return getgrent (msg); } octave_group octave_group::getgrent (std::string& msg) { #if defined (HAVE_GETGRENT) msg = ""; return octave_group (::getgrent (), msg); #else msg = NOT_SUPPORTED ("getgrent"); return octave_group (); #endif } octave_group octave_group::getgrgid (gid_t gid) { std::string msg; return getgrgid (gid, msg); } octave_group octave_group::getgrgid (gid_t gid, std::string& msg) { #if defined (HAVE_GETGRGID) msg = ""; return octave_group (::getgrgid (gid), msg); #else msg = NOT_SUPPORTED ("getgruid"); return octave_group (); #endif } octave_group octave_group::getgrnam (const std::string& nm) { std::string msg; return getgrnam (nm, msg); } octave_group octave_group::getgrnam (const std::string& nm, std::string& msg) { #if defined (HAVE_GETGRNAM) msg = ""; return octave_group (::getgrnam (nm.c_str ()), msg); #else msg = NOT_SUPPORTED ("getgrnam"); return octave_group (); #endif } int octave_group::setgrent (void) { std::string msg; return setgrent (msg); } int octave_group::setgrent (std::string& msg) { #if defined (HAVE_SETGRENT) msg = ""; ::setgrent (); return 0; #else msg = NOT_SUPPORTED ("setgrent"); return -1; #endif } int octave_group::endgrent (void) { std::string msg; return endgrent (msg); } int octave_group::endgrent (std::string& msg) { #if defined (HAVE_ENDGRENT) msg = ""; ::endgrent (); return 0; #else msg = NOT_SUPPORTED ("endgrent"); return -1; #endif } octave_group::octave_group (void *p, std::string& msg) : gr_name (), gr_passwd (), gr_gid (0), gr_mem (), valid (false) { #if defined (HAVE_GRP_H) msg = ""; if (p) { struct group *gr = static_cast<struct group *> (p); gr_name = gr->gr_name; #if defined (HAVE_GR_PASSWD) gr_passwd = gr->gr_passwd; #endif gr_gid = gr->gr_gid; // FIXME: Maybe there should be a string_vector constructor // that takes a NUL terminated list of C strings? const char * const *tmp = gr->gr_mem; int k = 0; while (*tmp++) k++; if (k > 0) { tmp = gr->gr_mem; gr_mem.resize (k); for (int i = 0; i < k; i++) gr_mem[i] = tmp[i]; } valid = true; } #else msg = NOT_SUPPORTED ("group functions"); #endif }