5#ifndef RIME_CONFIG_COMPILER_H_
6#define RIME_CONFIG_COMPILER_H_
66 bool blocking(
const string& full_path)
const;
67 bool pending(
const string& full_path)
const;
68 bool resolved(
const string& full_path)
const;
std::shared_ptr< T > an
Definition common.h:60
std::ostream & operator<<(std::ostream &stream, const Reference &reference)
Definition config_compiler.cc:12
std::unique_ptr< T > the
Definition common.h:58
Definition config_compiler.cc:20
an< ConfigData > data
Definition config_compiler.h:17
void SetItem(an< ConfigItem > item) override
Definition config_compiler.h:23
string resource_id
Definition config_compiler.h:16
ConfigResource(const string &_id, an< ConfigData > _data)
Definition config_compiler.h:20
bool loaded
Definition config_compiler.h:18
an< ConfigItem > GetItem() const override
Definition config_compiler.h:22
Definition config_compiler.h:26
string local_path
Definition config_compiler.h:28
string repr() const
Definition config_compiler.cc:49
bool optional
Definition config_compiler.h:29
string resource_id
Definition config_compiler.h:27
void Push(an< ConfigResource > resource)
Definition config_compiler.cc:299
bool Parse(const string &key, const an< ConfigItem > &item)
Definition config_compiler.cc:488
an< ConfigResource > Compile(const string &file_name)
Definition config_compiler.cc:328
static constexpr const char * MERGE_DIRECTIVE
Definition config_compiler.h:46
void AddDependency(an< Dependency > dependency)
Definition config_compiler.cc:295
static constexpr const char * PATCH_DIRECTIVE
Definition config_compiler.h:44
static constexpr const char * APPEND_DIRECTIVE
Definition config_compiler.h:45
vector< of< Dependency > > GetDependencies(const string &path)
Definition config_compiler.cc:413
bool ResolveDependencies(const string &path)
Definition config_compiler.cc:520
static constexpr const char * INCLUDE_DIRECTIVE
Definition config_compiler.h:43
an< ConfigResource > GetCompiledResource(const string &resource_id) const
Definition config_compiler.cc:323
bool resolved(const string &full_path) const
Definition config_compiler.cc:408
bool blocking(const string &full_path) const
Definition config_compiler.cc:398
Reference CreateReference(const string &qualified_path)
Definition config_compiler.cc:279
ConfigCompiler(ResourceResolver *resource_resolver, ConfigCompilerPlugin *plugin)
Definition config_compiler.cc:271
void EnumerateResources(function< void(an< ConfigResource > resource)> process_resource)
Definition config_compiler.cc:316
bool Link(an< ConfigResource > target)
Definition config_compiler.cc:499
bool pending(const string &full_path) const
Definition config_compiler.cc:404
void Pop()
Definition config_compiler.cc:312
Definition config_compiler_impl.h:21
ConfigItemRef(ConfigData *data)
Definition config_types.h:128