unary_routine_rep< D, S1 > Class Template Reference

#include <routine.hpp>

Inheritance diagram for unary_routine_rep< D, S1 >:
routine_rep rep_struct

List of all members.

Public Member Functions

Public Attributes


Detailed Description

template<typename D, typename S1>
class mmx::unary_routine_rep< D, S1 >

Definition at line 179 of file routine.hpp.


Constructor & Destructor Documentation

unary_routine_rep ( const generic name,
function_type  fun2 
) [inline]

Definition at line 183 of file routine.hpp.

00183                                                              :
00184     routine_rep (name), fun (fun2) {}
  generic apply (const generic& x1) const {


Member Function Documentation

generic apply ( const generic g1,
const generic g2 
) const [virtual, inherited]

Reimplemented in binary_routine_rep< D, S1, S2 >, binary_routine_rep< void, S1, S2 >, composed_routine_rep, change_signature_routine_rep, and integrate_routine_rep.

Definition at line 47 of file routine.cpp.

References routine_rep::apply().

00047                                                               {
00048   return apply (vec<generic> (g1, g2));
00049 }

generic apply (  )  const [virtual, inherited]

Reimplemented in nullary_routine_rep< void >, change_signature_routine_rep, and integrate_routine_rep.

Definition at line 37 of file routine.cpp.

Referenced by routine_rep::apply().

00037                           {
00038   return apply (vec<generic> ());
00039 }

generic apply ( const vector< generic > &  v  )  const [inline, virtual]

Reimplemented from routine_rep.

Definition at line 188 of file routine.hpp.

References mmx::apply(), ASSERT, and mmx::N().

00188                                                  {
00189     ASSERT (N(v) == 1, "one argument expected");
00190     return apply (v[0]);
00191   }

generic apply ( const generic x1  )  const [inline, virtual]

Reimplemented from routine_rep.

Definition at line 185 of file routine.hpp.

00185                                           {
00186     return make_abstract<D> (fun (make_concrete<S1> (x1)));
00187   }

routine clone (  )  const [virtual, inherited]

Definition at line 91 of file routine.cpp.

References ERROR.

00091                           {
00092   ERROR ("not implemented (clone)");
00093   return routine (this, true);
00094 }

generic function_body (  )  const [virtual, inherited]

Definition at line 81 of file routine.cpp.

00081                                   {
00082   return "native";
00083 }

generic function_type (  )  const [virtual, inherited]

Definition at line 86 of file routine.cpp.

References mmx::gen(), mmx::GEN_FUNCTION_TYPE, routine_rep::signature(), and mmx::type_name().

00086                                   {
00087   return gen (GEN_FUNCTION_TYPE, type_name (signature ()));
00088 }

bool is_overloaded (  )  const [virtual, inherited]

Definition at line 71 of file routine.cpp.

00071                                   {
00072   return false;
00073 }

vector< routine > meanings (  )  const [virtual, inherited]

Definition at line 76 of file routine.cpp.

References ERROR.

00076                              {
00077   ERROR ("not implemented (meanings)");
00078 }

void overload ( const routine fun  )  const [virtual, inherited]

Definition at line 66 of file routine.cpp.

References ERROR.

00066                                                {
00067   ERROR ("not implemented (overload)");
00068 }

vector<nat> signature (  )  const [inline, virtual]

Reimplemented from routine_rep.

Definition at line 192 of file routine.hpp.

00192                                  {
00193     return vec<nat> (type_information<D>::id, type_information<S1>::id);
00194   }


Member Data Documentation

generic name [inherited]

Definition at line 64 of file routine.hpp.

Referenced by routine_rep::apply().

MMX_ALLOCATORS int ref_count [inherited]

Definition at line 164 of file basix.hpp.


The documentation for this class was generated from the following file:

Generated on 6 Dec 2012 for basix by  doxygen 1.6.1