In file included from /in/Compile/Map_compile_check.cpp:5:0:
/in/Map.h:88:41: error: wrong number of template arguments (3, should be at least 1)
BinarySearchTree<Key, Value, Compare> tree;
^
In file included from /in/Map.h:4:0,
from /in/Compile/Map_compile_check.cpp:5:
/in/BinarySearchTree.h:29:7: note: provided for 'template<class T, class Compare> class BinarySearchTree'
class BinarySearchTree {
^~~~~~~~~~~~~~~~
In file included from /in/Compile/Map_compile_check.cpp:5:0:
/in/Map.h: In member function 'int Map<Key, Value, Compare>::size() const':
/in/Map.h:42:21: error: request for member 'size' in '((const Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'const int'
return tree.size();
^~~~
/in/Map.h: In member function 'bool Map<Key, Value, Compare>::contains(const Key&) const':
/in/Map.h:47:21: error: request for member 'contains' in '((const Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'const int'
return tree.contains(key);
^~~~~~~~
/in/Map.h: In member function 'Value& Map<Key, Value, Compare>::at(const Key&)':
/in/Map.h:52:21: error: request for member 'at' in '((Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'int'
return tree.at(key);
^~
/in/Map.h: In member function 'const Value& Map<Key, Value, Compare>::at(const Key&) const':
/in/Map.h:56:21: error: request for member 'at' in '((const Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'const int'
return tree.at(key);
^~
/in/Map.h: In member function 'void Map<Key, Value, Compare>::insert(const Key&, const Value&)':
/in/Map.h:61:14: error: request for member 'insert' in '((Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'int'
tree.insert(key, value);
^~~~~~
/in/Map.h: In member function 'void Map<Key, Value, Compare>::insert(Key&&, Value&&)':
/in/Map.h:65:14: error: request for member 'insert' in '((Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'int'
tree.insert(std::move(key), std::move(value));
^~~~~~
/in/Map.h: In member function 'void Map<Key, Value, Compare>::erase(const Key&)':
/in/Map.h:70:14: error: request for member 'erase' in '((Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'int'
tree.erase(key);
^~~~~
/in/Map.h: In member function 'void Map<Key, Value, Compare>::clear()':
/in/Map.h:75:14: error: request for member 'clear' in '((Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'int'
tree.clear();
^~~~~
/in/Map.h: In member function 'void Map<Key, Value, Compare>::traverse_inorder(std::ostream&) const':
/in/Map.h:80:14: error: request for member 'traverse_inorder' in '((const Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'const int'
tree.traverse_inorder(os);
^~~~~~~~~~~~~~~~
/in/Map.h: In member function 'void Map<Key, Value, Compare>::traverse_preorder(std::ostream&) const':
/in/Map.h:84:14: error: request for member 'traverse_preorder' in '((const Map<Key, Value, Compare>*)this)->Map<Key, Value, Compare>::tree', which is of non-class type 'const int'
tree.traverse_preorder(os);
^~~~~~~~~~~~~~~~~
/in/Compile/Map_compile_check.cpp: In function 'int main()':
/in/Compile/Map_compile_check.cpp:47:21: error: 'Iterator' is not a member of 'Map<std::__cxx11::basic_string<char>, int>'
Map<string, int>::Iterator it;
^~~~~~~~
/in/Compile/Map_compile_check.cpp:48:38: error: 'Iterator' is not a member of 'Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>'
Map<Duck, string, DuckWealthLess>::Iterator duck_it;
^~~~~~~~
/in/Compile/Map_compile_check.cpp:62:17: error: 'const class Map<std::__cxx11::basic_string<char>, int>' has no member named 'empty'
b = const_map.empty();
^~~~~
/in/Compile/Map_compile_check.cpp:63:22: error: 'const class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'empty'
b = const_duck_map.empty();
^~~~~
/in/Compile/Map_compile_check.cpp:68:3: error: 'it' was not declared in this scope
it = const_map.begin();
^~
/in/Compile/Map_compile_check.cpp:68:3: note: suggested alternative: 'st'
it = const_map.begin();
^~
st
/in/Compile/Map_compile_check.cpp:68:18: error: 'const class Map<std::__cxx11::basic_string<char>, int>' has no member named 'begin'
it = const_map.begin();
^~~~~
/in/Compile/Map_compile_check.cpp:69:3: error: 'duck_it' was not declared in this scope
duck_it = const_duck_map.begin();
^~~~~~~
/in/Compile/Map_compile_check.cpp:69:3: note: suggested alternative: 'duck_map'
duck_it = const_duck_map.begin();
^~~~~~~
duck_map
/in/Compile/Map_compile_check.cpp:69:28: error: 'const class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'begin'
duck_it = const_duck_map.begin();
^~~~~
/in/Compile/Map_compile_check.cpp:71:18: error: 'const class Map<std::__cxx11::basic_string<char>, int>' has no member named 'end'
it = const_map.end();
^~~
/in/Compile/Map_compile_check.cpp:72:28: error: 'const class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'end'
duck_it = const_duck_map.end();
^~~
/in/Compile/Map_compile_check.cpp:74:18: error: 'const class Map<std::__cxx11::basic_string<char>, int>' has no member named 'find'
it = const_map.find("");
^~~~
/in/Compile/Map_compile_check.cpp:75:28: error: 'const class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'find'
duck_it = const_duck_map.find(Duck());
^~~~
/in/Compile/Map_compile_check.cpp:80:26: error: no matching function for call to 'Map<std::__cxx11::basic_string<char>, int>::insert(<brace-enclosed initializer list>)'
it = map.insert({"", 1}).first;
^
In file included from /in/Compile/Map_compile_check.cpp:5:0:
/in/Map.h:60:10: note: candidate: void Map<Key, Value, Compare>::insert(const Key&, const Value&) [with Key = std::__cxx11::basic_string<char>; Value = int; Compare = std::less<std::__cxx11::basic_string<char> >]
void insert(const Key &key, const Value &value) {
^~~~~~
/in/Map.h:60:10: note: candidate expects 2 arguments, 1 provided
/in/Map.h:64:10: note: candidate: void Map<Key, Value, Compare>::insert(Key&&, Value&&) [with Key = std::__cxx11::basic_string<char>; Value = int; Compare = std::less<std::__cxx11::basic_string<char> >]
void insert(Key &&key, Value &&value) {
^~~~~~
/in/Map.h:64:10: note: candidate expects 2 arguments, 1 provided
/in/Compile/Map_compile_check.cpp:81:30: error: no matching function for call to 'Map<std::__cxx11::basic_string<char>, int>::insert(<brace-enclosed initializer list>)'
b = map.insert({"quack", 2}).second;
^
In file included from /in/Compile/Map_compile_check.cpp:5:0:
/in/Map.h:60:10: note: candidate: void Map<Key, Value, Compare>::insert(const Key&, const Value&) [with Key = std::__cxx11::basic_string<char>; Value = int; Compare = std::less<std::__cxx11::basic_string<char> >]
void insert(const Key &key, const Value &value) {
^~~~~~
/in/Map.h:60:10: note: candidate expects 2 arguments, 1 provided
/in/Map.h:64:10: note: candidate: void Map<Key, Value, Compare>::insert(Key&&, Value&&) [with Key = std::__cxx11::basic_string<char>; Value = int; Compare = std::less<std::__cxx11::basic_string<char> >]
void insert(Key &&key, Value &&value) {
^~~~~~
/in/Map.h:64:10: note: candidate expects 2 arguments, 1 provided
/in/Compile/Map_compile_check.cpp:82:47: error: no matching function for call to 'Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>::insert(<brace-enclosed initializer list>)'
duck_it = duck_map.insert({Duck(), "Donald"}).first;
^
In file included from /in/Compile/Map_compile_check.cpp:5:0:
/in/Map.h:60:10: note: candidate: void Map<Key, Value, Compare>::insert(const Key&, const Value&) [with Key = Duck; Value = std::__cxx11::basic_string<char>; Compare = DuckWealthLess]
void insert(const Key &key, const Value &value) {
^~~~~~
/in/Map.h:60:10: note: candidate expects 2 arguments, 1 provided
/in/Map.h:64:10: note: candidate: void Map<Key, Value, Compare>::insert(Key&&, Value&&) [with Key = Duck; Value = std::__cxx11::basic_string<char>; Compare = DuckWealthLess]
void insert(Key &&key, Value &&value) {
^~~~~~
/in/Map.h:64:10: note: candidate expects 2 arguments, 1 provided
/in/Compile/Map_compile_check.cpp:83:49: error: no matching function for call to 'Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>::insert(<brace-enclosed initializer list>)'
b = duck_map.insert({Duck(1000000), "Scrooge"}).second;
^
In file included from /in/Compile/Map_compile_check.cpp:5:0:
/in/Map.h:60:10: note: candidate: void Map<Key, Value, Compare>::insert(const Key&, const Value&) [with Key = Duck; Value = std::__cxx11::basic_string<char>; Compare = DuckWealthLess]
void insert(const Key &key, const Value &value) {
^~~~~~
/in/Map.h:60:10: note: candidate expects 2 arguments, 1 provided
/in/Map.h:64:10: note: candidate: void Map<Key, Value, Compare>::insert(Key&&, Value&&) [with Key = Duck; Value = std::__cxx11::basic_string<char>; Compare = DuckWealthLess]
void insert(Key &&key, Value &&value) {
^~~~~~
/in/Map.h:64:10: note: candidate expects 2 arguments, 1 provided
/in/Compile/Map_compile_check.cpp:85:15: error: no match for 'operator[]' (operand types are 'Map<std::__cxx11::basic_string<char>, int>' and 'const char [4]')
int &x = map["wat"];
^
/in/Compile/Map_compile_check.cpp:87:24: error: no match for 'operator[]' (operand types are 'Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' and 'Duck')
string &x2 = duck_map[Duck(-200)];
^
/in/Compile/Map_compile_check.cpp:92:12: error: 'class Map<std::__cxx11::basic_string<char>, int>' has no member named 'begin'
it = map.begin();
^~~~~
/in/Compile/Map_compile_check.cpp:93:22: error: 'class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'begin'
duck_it = duck_map.begin();
^~~~~
/in/Compile/Map_compile_check.cpp:104:11: error: 'class Map<std::__cxx11::basic_string<char>, int>' has no member named 'end'
b = map.end() == map.end();
^~~
/in/Compile/Map_compile_check.cpp:104:24: error: 'class Map<std::__cxx11::basic_string<char>, int>' has no member named 'end'
b = map.end() == map.end();
^~~
/in/Compile/Map_compile_check.cpp:105:16: error: 'class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'end'
b = duck_map.end() == duck_map.end();
^~~
/in/Compile/Map_compile_check.cpp:105:34: error: 'class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'end'
b = duck_map.end() == duck_map.end();
^~~
/in/Compile/Map_compile_check.cpp:107:11: error: 'class Map<std::__cxx11::basic_string<char>, int>' has no member named 'end'
b = map.end() != map.end();
^~~
/in/Compile/Map_compile_check.cpp:107:24: error: 'class Map<std::__cxx11::basic_string<char>, int>' has no member named 'end'
b = map.end() != map.end();
^~~
/in/Compile/Map_compile_check.cpp:108:16: error: 'class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'end'
b = duck_map.end() != duck_map.end();
^~~
/in/Compile/Map_compile_check.cpp:108:34: error: 'class Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>' has no member named 'end'
b = duck_map.end() != duck_map.end();
^~~
/in/Compile/Map_compile_check.cpp:110:26: error: unable to deduce 'const auto&' from 'it'
const auto &const_it = it;
^~
/in/Compile/Map_compile_check.cpp:111:31: error: unable to deduce 'const auto&' from 'duck_it'
const auto &const_duck_it = duck_it;
^~~~~~~
/in/Compile/Map_compile_check.cpp:113:21: error: 'Iterator' is not a member of 'Map<std::__cxx11::basic_string<char>, int>'
Map<string, int>::Iterator it_copy(const_it);
^~~~~~~~
/in/Compile/Map_compile_check.cpp:114:38: error: 'Iterator' is not a member of 'Map<Duck, std::__cxx11::basic_string<char>, DuckWealthLess>'
Map<Duck, string, DuckWealthLess>::Iterator duck_it_copy(const_duck_it);
^~~~~~~~
/in/Compile/Map_compile_check.cpp:116:13: error: 'it_copy' was not declared in this scope
cout << (*it_copy).first << (*duck_it_copy).second << endl;
^~~~~~~
/in/Compile/Map_compile_check.cpp:116:13: note: suggested alternative: 'map_copy'
cout << (*it_copy).first << (*duck_it_copy).second << endl;
^~~~~~~
map_copy
/in/Compile/Map_compile_check.cpp:116:33: error: 'duck_it_copy' was not declared in this scope
cout << (*it_copy).first << (*duck_it_copy).second << endl;
^~~~~~~~~~~~
/in/Compile/Map_compile_check.cpp:116:33: note: suggested alternative: 'duck_map_copy'
cout << (*it_copy).first << (*duck_it_copy).second << endl;
^~~~~~~~~~~~
duck_map_copy
/in/Compile/Makefile:32: recipe for target 'Map_compile_check.exe' failed
make: *** [Map_compile_check.exe] Error 1