core: drop std::function and ndn::Exclude from common.hpp, add ndn::optional

Change-Id: Ie3983d8b6f9929430efd8ada8d942e3f95755cd4
diff --git a/tests/daemon/table/cs.t.cpp b/tests/daemon/table/cs.t.cpp
index 66b7e95..a8363de 100644
--- a/tests/daemon/table/cs.t.cpp
+++ b/tests/daemon/table/cs.t.cpp
@@ -28,6 +28,8 @@
 #include "tests/test-common.hpp"
 
 #include <cstring>
+
+#include <ndn-cxx/exclude.hpp>
 #include <ndn-cxx/lp/tags.hpp>
 #include <ndn-cxx/util/sha256.hpp>
 
@@ -92,7 +94,7 @@
   size_t
   erase(const Name& prefix, size_t limit)
   {
-    ndn::optional<size_t> nErased;
+    optional<size_t> nErased;
     m_cs.erase(prefix, limit, [&] (size_t nErased1) { nErased = nErased1; });
 
     // current Cs::erase implementation is synchronous
@@ -331,7 +333,7 @@
   uint8_t digestFF[ndn::util::Sha256::DIGEST_SIZE];
   std::fill_n(digestFF, sizeof(digestFF), 0xFF);
 
-  Exclude excludeDigest;
+  ndn::Exclude excludeDigest;
   excludeDigest.excludeRange(
     name::Component::fromImplicitSha256Digest(digest00, sizeof(digest00)),
     name::Component::fromImplicitSha256Digest(digestFF, sizeof(digestFF)));
@@ -346,7 +348,7 @@
     .setExclude(excludeDigest);
   CHECK_CS_FIND(3);
 
-  Exclude excludeGeneric;
+  ndn::Exclude excludeGeneric;
   excludeGeneric.excludeAfter(name::Component(static_cast<uint8_t*>(nullptr), 0));
 
   startInterest("/A")
@@ -359,7 +361,7 @@
     .setExclude(excludeGeneric);
   find([] (uint32_t found) { BOOST_CHECK(found == 1 || found == 2); });
 
-  Exclude exclude2 = excludeGeneric;
+  ndn::Exclude exclude2 = excludeGeneric;
   exclude2.excludeOne(n2.get(-1));
 
   startInterest("/A")
diff --git a/tests/daemon/table/pit.t.cpp b/tests/daemon/table/pit.t.cpp
index c883ff4..511f2aa 100644
--- a/tests/daemon/table/pit.t.cpp
+++ b/tests/daemon/table/pit.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2017,  Regents of the University of California,
+ * Copyright (c) 2014-2018,  Regents of the University of California,
  *                           Arizona Board of Regents,
  *                           Colorado State University,
  *                           University Pierre & Marie Curie, Sorbonne University,
@@ -24,10 +24,12 @@
  */
 
 #include "table/pit.hpp"
-#include "tests/daemon/face/dummy-face.hpp"
 
+#include "tests/daemon/face/dummy-face.hpp"
 #include "tests/test-common.hpp"
 
+#include <ndn-cxx/exclude.hpp>
+
 namespace nfd {
 namespace pit {
 namespace tests {
@@ -60,9 +62,9 @@
 {
   Name name1("ndn:/5vzBNnMst");
   Name name2("ndn:/igSGfEIM62");
-  Exclude exclude1;
+  ndn::Exclude exclude1;
   exclude1.excludeOne(Name::Component("u26p47oep"));
-  Exclude exclude2;
+  ndn::Exclude exclude2;
   exclude2.excludeBefore(Name::Component("u26p47oep"));
   ndn::KeyLocator keyLocator1("ndn:/sGAE3peMHA");
   ndn::KeyLocator keyLocator2("ndn:/nIJH6pr4");