| From: | Andrew Dunstan <andrew(at)dunslane(dot)net> | 
|---|---|
| To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, David Rowley <dgrowleyml(at)gmail(dot)com> | 
| Cc: | vignesh C <vignesh21(at)gmail(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, Andres Freund <andres(at)anarazel(dot)de>, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org> | 
| Subject: | Re: Reduce the number of special cases to build contrib modules on windows | 
| Date: | 2021-07-27 15:29:58 | 
| Message-ID: | 4904b1e9-5c7a-f703-c167-a9e1174eaeed@dunslane.net | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On 7/27/21 11:01 AM, Alvaro Herrera wrote:
> On 2021-Jul-28, David Rowley wrote:
>
>> 0003: Is a tidy up patch to make the 'includes' field an array rather
>> than a string
> In this one, you can avoid turning one line into four with map,
>
> -	$p->AddIncludeDir($pl_proj->{includes});
> +	foreach my $inc (@{ $pl_proj->{includes} })
> +	{
> +		$p->AddIncludeDir($inc);
> +	}
>
> Instead of that you can do something like this:
>
> +	map { $p->AddIncludeDir($_); } @{$pl_proj->{includes}};
using map() for a side effect like this is generally frowned upon. See
<https://metacpan.org/pod/Perl::Critic::Policy::BuiltinFunctions::ProhibitVoidMap>
do { $p->AddIncludeDir($_); } foreach @{$pl_proj->{includes}};
would be an ok one-liner.
>
>> 0004: Adds code to check for duplicate references and libraries before
>> adding new ones of the same name to the project.
> I think using the return value of grep as a boolean is confusing.  It
> seems more legible to compare to 0.  So instead of this:
>
> +		if (! grep { $_ eq $ref} @{ $self->{references} })
> +		{
> +			push @{ $self->{references} }, $ref;
> +		}
>
> use something like:
>
> +		if (grep { $_ eq $ref} @{ $self->{references} } == 0)
>
But I believe that's a widely used idiom :-)
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2021-07-27 15:36:54 | Re: Delegating superuser tasks to new security roles (Was: Granting control of SUSET gucs to non-superusers) | 
| Previous Message | Robert Haas | 2021-07-27 15:27:12 | Re: Delegating superuser tasks to new security roles (Was: Granting control of SUSET gucs to non-superusers) |