protected IType ArgumentType(Node node) { Expression e = node as Expression; return null != e ? TypeSystemServices.GetExpressionType(e) : TypeSystem.TypeSystemServices.GetType(node); }