public virtual IBinding Resolve(string name) { foreach (TypeMember member in _typeDefinition.Members) { if (name == member.Name) { IBinding binding = BindingManager.GetOptionalBinding(member); if (null == binding) { binding = CreateCorrectBinding(member); _bindingManager.Bind(member, binding); } if (BindingType.Type == binding.BindingType) { binding = _bindingManager.ToTypeReference((ITypeBinding)binding); } return(binding); } } foreach (TypeReference baseType in _typeDefinition.BaseTypes) { IBinding binding = _bindingManager.GetBoundType(baseType).Resolve(name); if (null != binding) { return(binding); } } return(null); }
public ITypeBinding GetParameterType(int parameterIndex) { return(_bindingManager.GetBoundType(_method.Parameters[parameterIndex].Type)); }