Navigation

Operators and Keywords

Function List:

C++ API

ov-type-conv.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


Defines

#define octave_ov_type_conv_h   1
#define OCTAVE_TYPE_CONV_BODY3(NAME, MATRIX_RESULT_T, SCALAR_RESULT_T)
#define OCTAVE_TYPE_CONV_BODY(NAME)

Define Documentation

#define octave_ov_type_conv_h   1

#define OCTAVE_TYPE_CONV_BODY ( NAME   ) 

Value:

OCTAVE_TYPE_CONV_BODY3 (NAME, octave_ ## NAME ## _matrix, \
                          octave_ ## NAME ## _scalar)

#define OCTAVE_TYPE_CONV_BODY3 ( NAME,
MATRIX_RESULT_T,
SCALAR_RESULT_T   ) 

Value:

\
  octave_value retval; \
 \
  int nargin = args.length (); \
 \
  if (nargin == 1) \
    { \
      const octave_value arg = args(0); \
 \
      int t_result = MATRIX_RESULT_T::static_type_id (); \
 \
      retval = octave_type_conv_body (arg, #NAME, t_result); \
      if (retval.is_undefined ()) \
        { \
          std::string arg_tname = arg.type_name (); \
 \
          std::string result_tname = arg.numel () == 1 \
            ? SCALAR_RESULT_T::static_type_name () \
            : MATRIX_RESULT_T::static_type_name (); \
 \
          gripe_invalid_conversion (arg_tname, result_tname); \
        } \
    } \
  else \
    print_usage (); \
 \
  return retval