Flutter Engine
 
Loading...
Searching...
No Matches
Data Struct Reference

#include <data.h>

Static Public Member Functions

static absl::StatusOr< DataOpen (std::string_view data_dir)
 

Public Attributes

Filter include_filter
 
Filter exclude_filter
 
Catalog catalog
 
std::filesystem::path secondary_dir
 

Detailed Description

In memory representation of the contents of the data directory

All the data needed to run the license checker.

Definition at line 17 of file data.h.

Member Function Documentation

◆ Open()

absl::StatusOr< Data > Data::Open ( std::string_view  data_dir)
static

Definition at line 14 of file data.cc.

14 {
15 fs::path data_path = fs::path(data_dir);
16 fs::path include_path = data_path / kIncludeFilename;
17 absl::StatusOr<Filter> include_filter = Filter::Open(include_path.string());
18 if (!include_filter.ok()) {
19 return absl::InvalidArgumentError("Can't open include.txt at " +
20 include_path.string() + ": " +
21 include_filter.status().ToString());
22 }
23 fs::path exclude_path = fs::path(data_dir) / kExcludeFilename;
24 absl::StatusOr<Filter> exclude_filter = Filter::Open(exclude_path.string());
25 if (!exclude_filter.ok()) {
26 return absl::InvalidArgumentError("Can't open exclude.txt at " +
27 exclude_path.string() + ": " +
28 include_filter.status().ToString());
29 }
30 absl::StatusOr<Catalog> catalog = Catalog::Open(data_dir);
31 if (!catalog.ok()) {
32 return absl::InvalidArgumentError("Can't open catalog at " +
33 exclude_path.string() + ": " +
34 catalog.status().ToString());
35 }
36
37 fs::path secondary_dir = data_path / "secondary";
38
39 return Data{
40 .include_filter = std::move(*include_filter),
41 .exclude_filter = std::move(*exclude_filter),
42 .catalog = std::move(*catalog),
43 .secondary_dir = fs::exists(secondary_dir) ? secondary_dir : fs::path()};
44}
static absl::StatusOr< Catalog > Open(std::string_view data_dir)
Definition catalog.cc:98
static absl::StatusOr< Filter > Open(std::string_view path)
Definition filter.cc:9
Definition data.h:17
Catalog catalog
Definition data.h:21
Filter include_filter
Definition data.h:19
std::filesystem::path secondary_dir
Definition data.h:22
Filter exclude_filter
Definition data.h:20

References catalog, exclude_filter, include_filter, Catalog::Open(), Filter::Open(), and secondary_dir.

Referenced by LicenseChecker::FileRun(), and LicenseChecker::Run().

Member Data Documentation

◆ catalog

Catalog Data::catalog

Definition at line 21 of file data.h.

Referenced by Open().

◆ exclude_filter

Filter Data::exclude_filter

Definition at line 20 of file data.h.

Referenced by Open().

◆ include_filter

Filter Data::include_filter

Definition at line 19 of file data.h.

Referenced by Open().

◆ secondary_dir

std::filesystem::path Data::secondary_dir

Definition at line 22 of file data.h.

Referenced by Open().


The documentation for this struct was generated from the following files: