using System.Collections.Generic;
public static void Main()
ICriterion ci = new Criterion("a");
Criterion c = new Criterion("a");
Console.WriteLine(IsBoxed(ci));
Console.WriteLine(IsBoxed(c));
public static bool IsBoxed<T>(T value)
(typeof(T).IsInterface || typeof(T) == typeof(object)) &&
value.GetType().IsValueType;
public interface ICriterion {}
public struct Criterion : ICriterion {
public Criterion(string criteria) {
public string Criteria {get;set;}