/// <summary>
 /// Creates a Flame type definition that wraps
 /// around an IL generic parameter.
 /// </summary>
 /// <param name="definition">
 /// The IL type definition to wrap.
 /// </param>
 /// <param name="parentMethod">
 /// The parent method that defines the generic parameter.
 /// </param>
 public ClrGenericParameter(
     GenericParameter definition,
     ClrMethodDefinition parentMethod)
     : this(
         definition,
         parentMethod.ParentType.Assembly,
         new TypeParent(parentMethod))
 {
 }
Exemple #2
0
        private void AnalyzeContents()
        {
            var assembly = ParentType.Assembly;

            propertyTypeValue = TypeHelpers.BoxIfReferenceType(
                assembly.Resolve(Definition.PropertyType, ParentType));

            // Analyze the parameter list.
            indexerParams = Definition.Parameters
                            .Select(param =>
                                    ClrMethodDefinition.WrapParameter(
                                        param,
                                        assembly,
                                        ParentType))
                            .ToArray();

            var attrBuilder = new AttributeMapBuilder();

            // TODO: analyze attributes.
            attributeMap = new AttributeMap(attrBuilder);
        }