Stroika Library
3.0d18
Help-Home
Loading...
Searching...
No Matches
Projection.cpp
1
/*
2
* Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3
*/
4
#include "Stroika/Foundation/StroikaPreComp.h"
5
6
#include "
Projection.h
"
7
8
using namespace
Stroika::Foundation
;
9
10
using namespace
Database;
11
using namespace
Database::Document;
12
13
/*
14
********************************************************************************
15
*************************** Document::Projection *******************************
16
********************************************************************************
17
*/
18
Database::Document::Document
Projection::Apply
(
const
Database::Document::Document& d)
const
19
{
20
Mapping<String, VariantValue>
vv = d;
21
if
(
const
Set<String>
* i0 = get_if<0> (&this->fFields_)) {
// eOmit
22
vv.
RemoveAll
(*i0);
23
}
24
else
if
(
const
Set<String>
* i1 = get_if<1> (&this->fFields_)) {
// eInclude
25
vv.
RetainAll
(*i1);
26
}
27
return
vv;
28
}
Projection.h
Stroika::Foundation::Containers::Mapping
Definition
Library/Sources/Stroika/Foundation/Containers/Mapping.h:114
Stroika::Foundation::Containers::Mapping::RemoveAll
nonvirtual void RemoveAll()
RemoveAll removes all, or all matching (predicate, iterator range, equals comparer or whatever) items...
Definition
Mapping.inl:240
Stroika::Foundation::Containers::Mapping::RetainAll
nonvirtual void RetainAll(const ITERABLE_OF_KEY_TYPE &items)
Stroika::Foundation::Containers::Set
Set<T> is a container of T, where once an item is added, additionally adds () do nothing.
Definition
Library/Sources/Stroika/Foundation/Containers/Set.h:105
Stroika::Foundation::Database::Document::Projection::Apply
nonvirtual Database::Document::Document Apply(const Database::Document::Document &d) const
Definition
Projection.cpp:18
Stroika::Foundation
Definition
BloomFilter.h:22
Library
Sources
Stroika
Foundation
Database
Document
Projection.cpp
Generated by
1.9.8