# HG changeset patch # User Rik # Date 1365548789 25200 # Node ID 27a6bb1a2f7452e94dda948eec98ac716896200d # Parent 40e34895a987f4637c106a8b77fd5abef0aa282e Backport working embedded.cc example for documentation. * doc/interpreter/dynamic.txi: Change documented output of embedded.cc to match new output. * examples/embedded.cc: Backported from 3.7.2+. Does not call gcd() with a matrix input which is unsupported. diff --git a/doc/interpreter/dynamic.txi b/doc/interpreter/dynamic.txi --- a/doc/interpreter/dynamic.txi +++ b/doc/interpreter/dynamic.txi @@ -1719,7 +1719,7 @@ @group $ mkoctfile --link-stand-alone embedded.cc -o embedded $ ./embedded -GCD of [10, 15] is 5 +GCD of [5, 10] is 5 $ @end group @end example diff --git a/examples/embedded.cc b/examples/embedded.cc --- a/examples/embedded.cc +++ b/examples/embedded.cc @@ -10,33 +10,24 @@ argv(0) = "embedded"; argv(1) = "-q"; - octave_main (2, argv.c_str_vec(), 1); + octave_main (2, argv.c_str_vec (), 1); octave_idx_type n = 2; - Matrix a_matrix = Matrix (1, 2); + octave_value_list in; - std::cout << "GCD of ["; - for (octave_idx_type i = 0; i < n; i++) - { - a_matrix (i) = 5 * (i + 1); - if (i != 0) - std::cout << ", " << 5 * (i + 2); - else - std::cout << 5 * (i + 2); - } - std::cout << "] is "; - - octave_value_list in = octave_value (a_matrix); + for (octave_idx_type i = 0; i < n; i++) + in(i) = octave_value (5 * (i + 1)); + octave_value_list out = feval ("gcd", in, 1); + if (!error_state && out.length () > 0) - { - a_matrix = out(0).matrix_value (); - if (a_matrix.numel () == 1) - std::cout << a_matrix(0) << "\n"; - else - std::cout << "invalid\n"; - } + std::cout << "GCD of [" + << in(0).int_value () + << ", " + << in(1).int_value () + << "] is " << out(0).int_value () + << std::endl; else std::cout << "invalid\n";