Add quick interactions locally

This commit is contained in:
2025-03-31 04:02:39 +02:00
parent 5bb7a207f2
commit b7d4531ec8
134 changed files with 15494 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
using System;
using System.Reflection;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using System.Diagnostics;
using Barotrauma;
namespace QIDependencyInjection
{
/// <summary>
/// Properties marked with [Dependency] will be injected,
/// and their own properties will be injected
/// </summary>
public class DependencyAttribute : System.Attribute { }
/// <summary>
/// Properties marked with [EntryPoint] will be created if == null
/// and then their own properties will be injected
/// </summary>
public class EntryPointAttribute : System.Attribute { }
/// <summary>
/// Properties marked with [Singleton] will be created, added to Singletons and injected
/// </summary>
public class SingletonAttribute : System.Attribute { }
/// <summary>
/// it's a stupid optimization attempt
/// Classes marked with [HasStaticDependencies] will be scanned in InjectStaticProperties(Assembly assembly, bool onlyIfHasStaticDependencies = true)
/// </summary>
public class HasStaticDependenciesAttribute : System.Attribute { }
/// <summary>
/// Classes marked with [DontInjectStatic] won't be injected by InjectStaticProperties(Assembly assembly, bool onlyIfHasStaticDependencies = true)
/// For test classes
/// </summary>
public class DontInjectStaticAttribute : System.Attribute { }
}