23 #if defined (HAVE_CONFIG_H)
66 std::set<std::string> dict;
81 error (
"invalid use of ~ in output list");
83 else if (dict.find (name) != dict.end ())
84 error (
"'%s' appears more than once in parameter list",
91 std::string va_type = (type ==
in ?
"varargin" :
"varargout");
101 if (
id && id->
name () == va_type)
134 if (++count > nargout)
145 while (k < ignored.
numel ())
162 (
"Octave:undefined-return-values",
163 "%s: some elements in list of return values are undefined",
178 int expected_nargin =
length ();
182 for (
int i = 0;
i < expected_nargin;
i++)
190 if (
args(
i).is_defined () &&
args(
i).is_magic_colon ())
193 error (
"no default value for argument %d",
i+1);
210 for (
int i = 0;
i < len;
i++)
220 std::list<std::string>
223 std::list<std::string>
retval;
229 retval.push_back (elt->
name ());
237 const Cell& varargout)
245 else if (nargout <= len)
275 retval(i++) = varargout(j);
313 new_list->
append (elt->
dup (scope, context));
347 new_list->
append (elt->
dup (scope, context));
void warning_with_id(const char *id, const char *fmt,...)
std::list< std::string > variable_names(void) const
tree_decl_elt * dup(symbol_table::scope_id scope, symbol_table::context_id context) const
bool validate(in_or_out type)
octave_idx_type numel(void) const
Number of elements in the array.
identity matrix If supplied two scalar respectively For allows like xample val
octave_idx_type length(void) const
bool is_defined(void) const
void error(const char *fmt,...)
tree_decl_elt *& back(void)
tree_return_list * dup(symbol_table::scope_id scope, symbol_table::context_id context) const
std::list< tree_decl_elt * >::iterator iterator
iterator erase(iterator pos)
virtual void visit_return_list(tree_return_list &)=0
octave_value rvalue1(int nargout=1)
tree_parameter_list * dup(symbol_table::scope_id scope, symbol_table::context_id context) const
static octave_value varval(const std::string &name, scope_id scope=xcurrent_scope, context_id context=xdefault_context)
tree_identifier * ident(void)
~tree_parameter_list(void)
void define_from_arg_vector(const octave_value_list &args)
void define(const octave_value &v)
OCTAVE_EXPORT octave_value_list return the number of command line arguments passed to Octave If called with the optional argument the function xample nargout(@histc)
virtual void visit_parameter_list(tree_parameter_list &)=0
static llvm::LLVMContext & context
std::string name(void) const
octave_value_list convert_to_const_vector(int nargout, const Cell &varargout)
void mark_as_formal_parameters(void)
virtual bool is_black_hole(void)
tree_parameter_list(void)
Matrix matrix_value(bool frc_str_conv=false) const
octave_lvalue lvalue(void)
bool takes_varargs(void) const
void mark_as_formal_parameter(void)
std::list< tree_decl_elt * >::const_iterator const_iterator
void assign(octave_value::assign_op, const octave_value &)
=val(i)}if ode{val(i)}occurs in table i
void initialize_undefined_elements(const std::string &warnfor, int nargout, const octave_value &val)
size_t length(void) const
void append(const elt_type &s)
void mark_varargs_only(void)
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
void accept(tree_walker &tw)
tree_index_expression * dup(symbol_table::scope_id scope, symbol_table::context_id context) const
void accept(tree_walker &tw)