[erlang-questions] Re: Using match in guards

Michael Truog mjtruog@REDACTED
Tue Dec 22 04:42:14 CET 2009


You would need to use erlang:length/1 and erlang:element/2 to get this
logic in a guard.  Keep in mind that erlang:length/1 is the only guard
function that is O(N), the others are O(1).


caio ariede wrote:
> Just correcting my example:
>
> search(S) when S = {regex, _} ->
> ...
>
> Caio Ariede
> http://caioariede.com/
>
>
>
> On Mon, Dec 21, 2009 at 9:01 PM, caio ariede <caio.ariede@REDACTED> wrote:
>   
>> In function guards we can use functions like is_string/1 and is_number/1.
>>
>> But I'm needing to check a generic type defined by {type, Value} but
>> *in guards* like this:
>>
>> search(S) when N = {regex, _} ->
>> ...
>>
>> I know that I can do that with search(S = {regex, _}), but my example
>> was only for representing the problem.
>>
>> The main question is: there is a way for using match in guards? Or
>> something like this?
>>
>> Caio Ariede
>> http://caioariede.com/
>>
>>     
>
> ________________________________________________________________
> erlang-questions mailing list. See http://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
>
>
>   



More information about the erlang-questions mailing list