Orcus
Toggle main menu visibility
Loading...
Searching...
No Matches
include
orcus
spreadsheet
tables.hpp
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/*
3
* This Source Code Form is subject to the terms of the Mozilla Public
4
* License, v. 2.0. If a copy of the MPL was not distributed with this
5
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
*/
7
8
#include "../env.hpp"
9
#include "types.hpp"
10
11
#include <memory>
12
#include <string_view>
13
#include <map>
14
15
namespace
ixion {
16
17
class
model_context;
18
19
}
20
21
namespace
orcus {
22
23
class
string_pool
;
24
25
namespace
spreadsheet {
26
27
namespace
detail {
struct
document_impl; }
28
29
struct
table_t
;
30
31
class
ORCUS_SPM_DLLPUBLIC tables
32
{
33
friend
struct
detail::document_impl;
34
35
tables(
string_pool
& sp, ixion::model_context& context);
36
37
public
:
38
tables() =
delete
;
39
tables(
const
tables&) =
delete
;
40
~tables();
41
42
tables& operator=(
const
tables&) =
delete
;
43
49
void
insert
(std::unique_ptr<table_t> p);
50
60
std::weak_ptr<const table_t>
get
(std::string_view name)
const
;
61
70
std::map<std::string_view, std::weak_ptr<const table_t>>
get_by_sheet
(sheet_t pos)
const
;
71
72
private
:
73
struct
impl;
74
std::unique_ptr<impl> mp_impl;
75
};
76
77
}}
78
79
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
orcus::spreadsheet::tables::get
std::weak_ptr< const table_t > get(std::string_view name) const
orcus::spreadsheet::tables::insert
void insert(std::unique_ptr< table_t > p)
orcus::spreadsheet::tables::get_by_sheet
std::map< std::string_view, std::weak_ptr< const table_t > > get_by_sheet(sheet_t pos) const
orcus::string_pool
Definition
string_pool.hpp:26
orcus::spreadsheet::table_t
Definition
table.hpp:63
Generated on
for Orcus by
1.17.0