# HG changeset patch # User John W. Eaton # Date 1364453538 14400 # Node ID a1690c3e93eb336bf0cbbcbde363833b1fb9200b # Parent a8d9ee3766db6a826a463bfd8b0a1e41f3658afc move hook_function constructor to .cc file * hook-fcn.cc: New file. Move hook_function::hook_function definition here from hook-fcn.h. * libinterp/interpfcn/module.mk (INTERPFCN_SRC): Include hook-fcn.cc in the list. diff --git a/libinterp/interpfcn/hook-fcn.cc b/libinterp/interpfcn/hook-fcn.cc new file mode 100644 --- /dev/null +++ b/libinterp/interpfcn/hook-fcn.cc @@ -0,0 +1,41 @@ +/* + +Copyright (C) 2013 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 +. + +*/ + +#include + +#include "hook-fcn.h" + +hook_function::hook_function (const octave_value& f, const octave_value& d) +{ + if (f.is_string ()) + { + std::string name = f.string_value (); + + rep = new named_hook_function (name, d); + } + else if (f.is_function_handle ()) + { + rep = new fcn_handle_hook_function (f, d); + } + else + error ("invalid hook function"); +} diff --git a/libinterp/interpfcn/hook-fcn.h b/libinterp/interpfcn/hook-fcn.h --- a/libinterp/interpfcn/hook-fcn.h +++ b/libinterp/interpfcn/hook-fcn.h @@ -185,22 +185,6 @@ octave_value data; }; -hook_function::hook_function (const octave_value& f, const octave_value& d) -{ - if (f.is_string ()) - { - std::string name = f.string_value (); - - rep = new named_hook_function (name, d); - } - else if (f.is_function_handle ()) - { - rep = new fcn_handle_hook_function (f, d); - } - else - error ("invalid hook function"); -} - class hook_function_list { diff --git a/libinterp/interpfcn/module.mk b/libinterp/interpfcn/module.mk --- a/libinterp/interpfcn/module.mk +++ b/libinterp/interpfcn/module.mk @@ -37,6 +37,7 @@ interpfcn/file-io.cc \ interpfcn/graphics.cc \ interpfcn/help.cc \ + interpfcn/hook-fcn.cc \ interpfcn/input.cc \ interpfcn/load-path.cc \ interpfcn/load-save.cc \