public CallableSignature GetSignature()
{
if (_signature == null)
{
CallableSignature definitionSignature = _definition.GetSignature();
IParameter[] parameters = Array.ConvertAll <IParameter, IParameter>(
definitionSignature.Parameters,
delegate(IParameter p)
{
return(new MappedParameter(_typeSystemServices, (ExternalParameter)p, this));
});
_signature = new CallableSignature(parameters, MapType(definitionSignature.ReturnType));
}
return(_signature);
}