Files
yck1509-ConfuserEx/Confuser.Core/Project/Patterns/ModuleFunction.cs
T
2014-05-27 19:45:37 +08:00

28 lines
684 B
C#

using dnlib.DotNet;
namespace Confuser.Core.Project.Patterns {
/// <summary>
/// A function that compare the module of definition.
/// </summary>
public class ModuleFunction : PatternFunction {
internal const string FnName = "module";
/// <inheritdoc />
public override string Name {
get { return FnName; }
}
/// <inheritdoc />
public override int ArgumentCount {
get { return 1; }
}
/// <inheritdoc />
public override object Evaluate(IDnlibDef definition) {
if (!(definition is IOwnerModule))
return false;
object name = Arguments[0].Evaluate(definition);
return ((IOwnerModule) definition).Module.Name == name.ToString();
}
}
}