//------------------------------------------------------------------------------
//
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
using Luban;
using SimpleJSON;
namespace TableConfig
{
public partial class TbAttribute
{
private readonly System.Collections.Generic.Dictionary _dataMap;
private readonly System.Collections.Generic.List _dataList;
public TbAttribute(JSONNode _buf)
{
_dataMap = new System.Collections.Generic.Dictionary();
_dataList = new System.Collections.Generic.List();
foreach(JSONNode _ele in _buf.Children)
{
AttributeTable _v;
{ if(!_ele.IsObject) { throw new SerializationException(); } _v = AttributeTable.DeserializeAttributeTable(_ele); }
_dataList.Add(_v);
_dataMap.Add(_v.Name, _v);
}
}
public System.Collections.Generic.Dictionary DataMap => _dataMap;
public System.Collections.Generic.List DataList => _dataList;
public AttributeTable GetOrDefault(string key) => _dataMap.TryGetValue(key, out var v) ? v : null;
public AttributeTable Get(string key) => _dataMap[key];
public AttributeTable this[string key] => _dataMap[key];
public void ResolveRef(Tables tables)
{
foreach(var _v in _dataList)
{
_v.ResolveRef(tables);
}
}
}
}