int main(int argc, char** argv){ if (argc != 2){ printf("ERROR!\n Incorrect INPUT data\n It mast look ./m <dir>\n"); exit(-1); } char *r_path = realpath(argv[1], NULL); if (r_path == NULL) { printf("realpath failed\n"); free(r_path); exit(-1); } int nid; nid = fork(); if (nid < 0) my_error("Can't fork!\n"); else if( nid == 0) call_1(r_path); else call_2(); return 0; }
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED static Result call_1(State1 const& state1,It1 const& it1,F& f) { return call_2( f(state1,it1), fusion::next(it1), f); }
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED static Result call_1(State1 const& state1,It1 const& it1,F& f) { return call_2( f(state1,BOOST_FUSION_FOLD_IMPL_INVOKE_IT_TRANSFORM(it1)), fusion::BOOST_FUSION_FOLD_IMPL_NEXT_IT_FUNCTION(it1), f); }
SPROUT_CONSTEXPR result_type call_1( typename Expr::args_type const& args, context_type const& ctx, Result1 const& res ) const { return res.success() ? result_type( true, res.current(), sprout::weed::attr_cnv::bitwise_or<attr1_type, attr2_type>(res.attr()), context_type(ctx, res.current()) ) : call_2(args, ctx, sprout::weed::eval(sprout::tuples::get<1>(args), ctx)) ; }
SPROUT_CONSTEXPR result_type call_1( typename Expr::args_type const& args, context_type const& ctx, Result1 const& res ) const { return res.success() ? call_2( args, ctx, res.attr(), sprout::weed::eval(sprout::tuples::get<1>(args), context_type(ctx, res.current())) ) : result_type(false, ctx.begin(), attribute_type(), ctx) ; }