4 namespace Entitas.Serialization.Configuration {
8 public const string GENERATED_FOLDER_PATH_KEY =
"Entitas.CodeGenerator.GeneratedFolderPath";
9 const string DEFAULT_GENERATED_FOLDER_PATH =
"Assets/Generated/";
10 public string generatedFolderPath {
11 get {
return _config.GetValueOrDefault(GENERATED_FOLDER_PATH_KEY, DEFAULT_GENERATED_FOLDER_PATH); }
12 set { _config[GENERATED_FOLDER_PATH_KEY] = value; }
15 public const string POOLS_KEY =
"Entitas.CodeGenerator.Pools";
16 public string[] pools {
17 get {
return separateValues(_config.GetValueOrDefault(POOLS_KEY,
string.Empty)); }
18 set { _config[POOLS_KEY] = joinValues(value); }
21 public const string ENABLED_CODE_GENERATORS_KEY =
"Entitas.CodeGenerator.EnabledCodeGenerators";
22 public string[] enabledCodeGenerators {
23 get {
return separateValues(_config.GetValueOrDefault(ENABLED_CODE_GENERATORS_KEY, _defaultEnabledCodeGenerators)); }
24 set { _config[ENABLED_CODE_GENERATORS_KEY] = joinValues(value); }
27 readonly
string _defaultEnabledCodeGenerators;
33 _defaultEnabledCodeGenerators = joinValues(codeGenerators);
36 generatedFolderPath = generatedFolderPath;
38 enabledCodeGenerators = enabledCodeGenerators;
41 static string joinValues(
string[] values) {
42 return string.Join(
",",
44 .Where(value => !
string.IsNullOrEmpty(value))
46 ).Replace(
" ",
string.Empty);
49 static string[] separateValues(
string values) {
51 .Split(
new [] {
',' }, StringSplitOptions.RemoveEmptyEntries)
52 .Select(value => value.Trim())
56 public override string ToString() {
57 return _config.ToString();