-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathquery_result.cpp
More file actions
59 lines (51 loc) · 1.13 KB
/
Copy pathquery_result.cpp
File metadata and controls
59 lines (51 loc) · 1.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include "query_result.h"
#include<sstream>
#include<iomanip>
using namespace std;
/**
Default Constructor
*/
query_result::query_result()
:doc(nullptr), score(0)
{}
/**
Default Constructor with that accepts a index-item and a double as param @param item @param sc
*/
query_result::query_result(index_item * item, double sc)
: doc(item), score(sc)
{}
/**
Default destructor
*/
query_result::~query_result()
{}
/**
Function that returns a pointer to the index item of the result
*/
index_item * query_result::getItem() const
{
return doc;
}
/**
Function that prints the query result
*/
std::ostream & operator<<(std::ostream & os, const query_result & qr)
{
ostringstream oss;
oss << "Document: " << qr.doc->name() << " -> " << setprecision(2) << qr.score;
return os << oss.str();
}
/**
Function that compares two query_result objects, used for sorting
*/
const bool operator>(query_result & left, query_result & right)
{
return (left.score > right.score);
}
/**
Function that compares two query_result objects, used for sorting
*/
const bool operator<(query_result & left, query_result & right)
{
return (left.score < right.score);
}