1 #ifndef __JLANG__JCPPFACET__
2 #define __JLANG__JCPPFACET__
19 namespace JPP {
using namespace JLANG; }
49 static inline bool is_eol (
const char c) {
return c ==
';'; }
70 const std::ios_base& format,
71 std::ios_base::iostate&
result,
88 const std::ios_base& format,
92 return do_put(out, format, c, buffer);
109 const std::ios_base& format,
110 std::ios_base::iostate&
result,
115 result = (ios_base::iostate) 0;
117 streamsize
n = format.width();
120 n = numeric_limits<streamsize>::max();
127 result |= ios_base::failbit;
128 result |= ios_base::eofbit;
134 for (++
i;
i != __end; c = *
i, ++
i) {
142 else if (c ==
'_' || isalpha(c))
150 result |= ios_base::failbit;
151 result |= ios_base::eofbit;
158 for (--
n;
i != __end &&
n != 0 && (*
i ==
'_' ||
161 buffer.push_back(*
i);
165 result |= ios_base::eofbit;
184 const std::ios_base& format,
190 if (format.flags() & ios_base::right) {
191 for (streamsize
i = buffer.size();
i < format.width(); ++
i, ++out) {
196 for (string::const_iterator
i = buffer.begin();
i != buffer.end(); ++
i, ++out) {
200 if (format.flags() & ios_base::left) {
201 for (streamsize
i = buffer.size();
i < format.width(); ++
i, ++out) {
222 while (i != __end && (isspace(*i) ||
is_eol(*i))) {
ostreambuf_iterator put(ostreambuf_iterator out, const std::ios_base &format, const char c, const std::string &buffer) const
Put string.
static bool is_begin_single_line_comment(const char c1, const char c2)
virtual istreambuf_iterator do_ignore(const istreambuf_iterator __begin, const istreambuf_iterator __end) const
Ignore white space and end of line characters.
void operator=(const JCppFacet &)
std::istreambuf_iterator< char, std::char_traits< char > > istreambuf_iterator
virtual ostreambuf_iterator do_put(ostreambuf_iterator out, const std::ios_base &format, const char c, const std::string &buffer) const
Put string.
std::ostreambuf_iterator< char, std::char_traits< char > > ostreambuf_iterator
virtual istreambuf_iterator do_get(const istreambuf_iterator __begin, const istreambuf_iterator __end, const std::ios_base &format, std::ios_base::iostate &result, std::string &buffer) const
Get string.
static bool is_end_single_line_comment(const char c1)
virtual istreambuf_iterator do_ignore_single_line_comment(const istreambuf_iterator __begin, const istreambuf_iterator __end) const
Ignore characters until end of line.
virtual istreambuf_iterator do_ignore_multi_line_comment(const istreambuf_iterator __begin, const istreambuf_iterator __end) const
Ignore characters until next end of comment.
TCanvas * c1
Global variables to handle mouse events.
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
Facet class to specify parsing of a C[++] variable name.
static bool is_eol(const char c)
Facet class to specify parsing of a JLANG::JString object.
virtual JCppFacet * clone() const override
Clone this facet.
static bool is_begin_multi_line_comment(const char c1, const char c2)
static bool is_end_multi_line_comment(const char c1, const char c2)