emit prototype method (to eliminate horrible copy/paste mess someone thought was good programming style)
parent
82d6bae4b9
commit
80b7d91264
|
@ -16,13 +16,14 @@
|
||||||
* @author Richard Roberts
|
* @author Richard Roberts
|
||||||
**/
|
**/
|
||||||
|
|
||||||
#include <iostream>
|
#include "Argument.h"
|
||||||
#include <fstream>
|
|
||||||
#include <sstream>
|
|
||||||
#include <boost/foreach.hpp>
|
#include <boost/foreach.hpp>
|
||||||
#include <boost/regex.hpp>
|
#include <boost/regex.hpp>
|
||||||
|
|
||||||
#include "Argument.h"
|
#include <iostream>
|
||||||
|
#include <fstream>
|
||||||
|
#include <sstream>
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
using namespace wrap;
|
using namespace wrap;
|
||||||
|
@ -128,4 +129,17 @@ void ArgumentList::matlab_unwrap(FileWriter& file, int start) const {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ************************************************************************* */
|
/* ************************************************************************* */
|
||||||
|
void ArgumentList::emit_prototype(FileWriter& file, const string& name) const {
|
||||||
|
file.oss << name << "(";
|
||||||
|
unsigned int i = 0;
|
||||||
|
BOOST_FOREACH(Argument arg, *this) {
|
||||||
|
if (i != size() - 1)
|
||||||
|
file.oss << arg.type << " " << arg.name << ", ";
|
||||||
|
else
|
||||||
|
file.oss << arg.type << " " << arg.name;
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
file.oss << ")";
|
||||||
|
}
|
||||||
|
/* ************************************************************************* */
|
||||||
|
|
||||||
|
|
|
@ -68,6 +68,13 @@ struct ArgumentList: public std::vector<Argument> {
|
||||||
*/
|
*/
|
||||||
void matlab_unwrap(FileWriter& file, int start = 0) const; // MATLAB to C++
|
void matlab_unwrap(FileWriter& file, int start = 0) const; // MATLAB to C++
|
||||||
|
|
||||||
|
/**
|
||||||
|
* emit MATLAB prototype
|
||||||
|
* @param file output stream
|
||||||
|
* @param name of method or function
|
||||||
|
*/
|
||||||
|
void emit_prototype(FileWriter& file, const std::string& name) const;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // \namespace wrap
|
} // \namespace wrap
|
||||||
|
|
Loading…
Reference in New Issue