src/util/math.h
src/util/multibit_build.cpp
src/util/multibit_build.h
+ src/util/noncopyable.h
src/util/operators.h
src/util/order_check.h
src/util/partial_store.h
#include "database.h"
#include "compiler/expression_info.h"
#include "parser/Component.h"
+#include "util/noncopyable.h"
#include <memory>
-#include <boost/core/noncopyable.hpp>
struct hs_database;
struct hs_expr_ext;
class ReportManager;
/** \brief Class gathering together the pieces of a parsed expression. */
-class ParsedExpression : boost::noncopyable {
+class ParsedExpression : noncopyable {
public:
ParsedExpression(unsigned index, const char *expression, unsigned flags,
ReportID report, const hs_expr_ext *ext = nullptr);
#include "util/compare.h"
#include "util/dump_mask.h"
#include "util/math.h"
+#include "util/noncopyable.h"
#include "util/target_info.h"
#include "util/ue2string.h"
#include "util/verify_types.h"
#include <string>
#include <vector>
-#include <boost/core/noncopyable.hpp>
#include <boost/multi_array.hpp>
using namespace std;
namespace {
-class FDRCompiler : boost::noncopyable {
+class FDRCompiler : noncopyable {
private:
const FDREngineDescription ŋ
const Grey &grey;
#include "ue2common.h"
#include "util/alloc.h"
#include "util/compare.h"
+#include "util/noncopyable.h"
#include "util/popcount.h"
#include "util/target_info.h"
#include "util/verify_types.h"
#include <string>
#include <vector>
-#include <boost/core/noncopyable.hpp>
-
using namespace std;
namespace ue2 {
//#define TEDDY_DEBUG
-class TeddyCompiler : boost::noncopyable {
+class TeddyCompiler : noncopyable {
const TeddyEngineDescription ŋ
const Grey &grey;
const vector<hwlmLiteral> &lits;
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#include "nfa/rdfa.h"
#include "nfagraph/ng_mcclellan.h"
#include "ue2common.h"
-#include "util/partitioned_set.h"
#include "util/container.h"
+#include "util/noncopyable.h"
+#include "util/partitioned_set.h"
#include "util/ue2_containers.h"
#include <algorithm>
#include <vector>
#include <iterator>
-#include <boost/core/noncopyable.hpp>
#include <boost/dynamic_bitset.hpp>
using namespace std;
vector<vector<dstate_id_t> > prev;
};
-struct DFA_components : boost::noncopyable {
+struct DFA_components : noncopyable {
dstate_id_t nstates;
size_t inp_size;
set<size_t> work_queue;
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#include "mcclellancompile.h"
#include "ue2common.h"
#include "util/charreach.h"
+#include "util/noncopyable.h"
#include "util/order_check.h"
#include "util/ue2_containers.h"
#include <set>
#include <vector>
-#include <boost/core/noncopyable.hpp>
#include <boost/graph/adjacency_list.hpp>
namespace ue2 {
struct GoughSSAVarMin;
struct GoughSSAVarJoin;
-struct GoughSSAVar : boost::noncopyable {
+struct GoughSSAVar : noncopyable {
GoughSSAVar(void) : seen(false), slot(INVALID_SLOT) {}
virtual ~GoughSSAVar();
const ue2::flat_set<GoughSSAVar *> &get_inputs() const {
#include "util/compile_context.h"
#include "util/depth.h"
#include "util/graph.h"
+#include "util/noncopyable.h"
#include "util/report_manager.h"
#include "util/ue2_containers.h"
#include <utility>
#include <vector>
-#include <boost/core/noncopyable.hpp>
-
namespace ue2 {
struct CompileContext;
class RoseBuild;
class SmallWriteBuild;
-class NG : boost::noncopyable {
+class NG : noncopyable {
public:
NG(const CompileContext &in_cc, size_t num_patterns,
unsigned in_somPrecision);
#include "ue2common.h"
#include "parser/position.h"
+#include "util/noncopyable.h"
#include <memory>
-#include <boost/core/noncopyable.hpp>
namespace ue2 {
/** \brief Abstract builder interface. Use \ref makeNFABuilder to construct
* one. Used by GlushkovBuildState. */
-class NFABuilder : boost::noncopyable {
+class NFABuilder : noncopyable {
public:
virtual ~NFABuilder();
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#include "ue2common.h"
#include <memory>
-#include <boost/core/noncopyable.hpp>
namespace ue2 {
#include <set>
#include <utility>
#include <vector>
-#include <boost/core/noncopyable.hpp>
#include <boost/dynamic_bitset.hpp>
#include <boost/range/adaptor/map.hpp>
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#include "ue2common.h"
#include "position.h"
+#include "util/noncopyable.h"
#include <memory>
#include <vector>
-#include <boost/core/noncopyable.hpp>
namespace ue2 {
*
* Abstract base class; use \ref makeGlushkovBuildState to get one of these you
* can use. */
-class GlushkovBuildState : boost::noncopyable {
+class GlushkovBuildState : noncopyable {
public:
/** \brief Represents an uninitialized state. */
static const Position POS_UNINITIALIZED;
#include "rose_in_graph.h"
#include "util/alloc.h"
#include "util/charreach.h"
+#include "util/noncopyable.h"
#include "util/ue2_containers.h"
#include "util/ue2string.h"
#include <utility>
#include <vector>
-#include <boost/core/noncopyable.hpp>
-
struct NFA;
struct SmallWriteEngine;
struct RoseEngine;
/** \brief Abstract interface intended for callers from elsewhere in the tree,
* real underlying implementation is RoseBuildImpl in rose_build_impl.h. */
-class RoseBuild : boost::noncopyable {
+class RoseBuild : noncopyable {
public:
virtual ~RoseBuild();
#include "util/dump_charclass.h"
#include "util/graph_range.h"
#include "util/make_unique.h"
+#include "util/noncopyable.h"
#include "util/order_check.h"
#include "util/report_manager.h"
#include "util/ue2string.h"
#include <vector>
#include <utility>
-#include <boost/core/noncopyable.hpp>
-
using namespace std;
namespace ue2 {
/**
* \brief Data used by most of the construction code in this file.
*/
-struct RoseBuildData : boost::noncopyable {
+struct RoseBuildData : noncopyable {
RoseBuildData(const RoseInGraph &ig_in, bool som_in)
: ig(ig_in), som(som_in) {}
#include "util/graph_range.h"
#include "util/make_unique.h"
#include "util/multibit_build.h"
+#include "util/noncopyable.h"
#include "util/order_check.h"
#include "util/popcount.h"
#include "util/queue_index_factory.h"
bool has_eod = false;
};
-struct build_context : boost::noncopyable {
+struct build_context : noncopyable {
/** \brief information about engines to the left of a vertex */
map<RoseVertex, left_build_info> leftfix_info;
/** \brief Data only used during construction of various programs (literal,
* anchored, delay, etc). */
-struct ProgramBuild : boost::noncopyable {
+struct ProgramBuild : noncopyable {
/** \brief Mapping from vertex to key, for vertices with a
* CHECK_NOT_HANDLED instruction. */
ue2::unordered_map<RoseVertex, u32> handledKeys;
#include "util/alloc.h"
#include "util/container.h"
#include "util/multibit_build.h"
+#include "util/noncopyable.h"
#include "util/ue2_containers.h"
#include "util/verify_types.h"
#include <vector>
#include <type_traits>
-#include <boost/core/noncopyable.hpp>
-
namespace ue2 {
-class RoseEngineBlob : boost::noncopyable {
+class RoseEngineBlob : noncopyable {
public:
/** \brief Base offset of engine_blob in the Rose engine bytecode. */
static constexpr u32 base_offset = ROUNDUP_CL(sizeof(RoseEngine));
#include "ue2common.h"
#include "util/alloc.h"
+#include "util/noncopyable.h"
#include <set>
-#include <boost/core/noncopyable.hpp>
-
struct SmallWriteEngine;
namespace ue2 {
// Abstract interface intended for callers from elsewhere in the tree, real
// underlying implementation is SmallWriteBuildImpl in smwr_build_impl.h.
-class SmallWriteBuild : boost::noncopyable {
+class SmallWriteBuild : noncopyable {
public:
// Destructor
virtual ~SmallWriteBuild();
#include "ue2common.h"
#include "nfagraph/ng_holder.h"
#include "util/alloc.h"
+#include "util/noncopyable.h"
#include "util/ue2_containers.h"
#include <deque>
#include <memory>
-#include <boost/core/noncopyable.hpp>
struct NFA;
/** \brief SOM slot manager. Used to hand out SOM slots and track their
* relationships during SOM construction. Also stores reverse NFAs used for
* SOM. */
-class SomSlotManager : boost::noncopyable {
+class SomSlotManager : noncopyable {
public:
explicit SomSlotManager(u8 precision);
~SomSlotManager();
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#define BOUNDARY_REPORTS_H
#include "ue2common.h"
+#include "util/noncopyable.h"
#include <set>
-#include <boost/core/noncopyable.hpp>
namespace ue2 {
-struct BoundaryReports : boost::noncopyable {
+struct BoundaryReports : noncopyable {
std::set<ReportID> report_at_0; /* set of internal reports to fire
* unconditionally at offset 0 */
std::set<ReportID> report_at_0_eod; /* set of internal reports to fire
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#define PARTITIONED_SET_H
#include "container.h"
+#include "noncopyable.h"
#include "ue2_containers.h"
#include "ue2common.h"
#include <algorithm>
#include <vector>
-#include <boost/core/noncopyable.hpp>
#include <boost/dynamic_bitset.hpp>
namespace ue2 {
*/
template<typename T>
-class partitioned_set : boost::noncopyable {
+class partitioned_set : noncopyable {
public:
class subset {
public:
/*
- * Copyright (c) 2015, Intel Corporation
+ * Copyright (c) 2015-2017, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
#define UTIL_QUEUE_INDEX_FACTORY_H
#include "ue2common.h"
-
-#include <boost/core/noncopyable.hpp>
+#include "util/noncopyable.h"
namespace ue2 {
-class QueueIndexFactory : boost::noncopyable {
+class QueueIndexFactory : noncopyable {
public:
QueueIndexFactory() : val(0) {}
u32 get_queue() { return val++; }
#include "ue2common.h"
#include "util/compile_error.h"
+#include "util/noncopyable.h"
#include "util/report.h"
#include <map>
#include <set>
#include <vector>
-#include <boost/core/noncopyable.hpp>
namespace ue2 {
};
/** \brief Tracks Report structures, exhaustion and dedupe keys. */
-class ReportManager : boost::noncopyable {
+class ReportManager : noncopyable {
public:
explicit ReportManager(const Grey &g);
#include "ue2common.h"
#include "util/graph_range.h"
+#include "util/noncopyable.h"
#include "util/operators.h"
#include <boost/functional/hash.hpp>
namespace graph_detail {
-class graph_base : boost::noncopyable {
+class graph_base : noncopyable {
};
struct default_edge_property {