框架上传
This commit is contained in:
29
Assets/00.StaryEvo/Runtime/Design/IQuery.cs
Normal file
29
Assets/00.StaryEvo/Runtime/Design/IQuery.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
namespace Stary.Evo
|
||||
{
|
||||
public interface IQuery<TResult> : IBelongToArchitecture,ICanSetArchitecture,ICanGetData,ICanGetSystem,ICanGetUtility
|
||||
{
|
||||
TResult Do();
|
||||
}
|
||||
|
||||
public abstract class AbstractQuery<T> : IQuery<T>
|
||||
{
|
||||
public T Do()
|
||||
{
|
||||
return OnDo();
|
||||
}
|
||||
|
||||
protected abstract T OnDo();
|
||||
|
||||
private IArchitecture mArchitecture;
|
||||
|
||||
IArchitecture IBelongToArchitecture.GetArchitecture()
|
||||
{
|
||||
return mArchitecture;
|
||||
}
|
||||
|
||||
void ICanSetArchitecture.SetArchitecture(IArchitecture architecture)
|
||||
{
|
||||
mArchitecture = architecture;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user