On Thu, Jun 7, 2012 at 12:27 PM, Dan Douglas <orm...@gmail.com> wrote:
> On Thursday, June 07, 2012 10:01:51 AM Pierre Gaston wrote:
>> On Thu, Jun 7, 2012 at 6:07 AM, Linda Walsh <b...@tlinx.org> wrote:
>> >(no I haven't made it space/bracket...whatever proof...just a bit
>> > more work)
>>
>> It's not just "a bit more work", there are many workarounds but it's not
>> really possible to make a really robust generic solution for assignment,
>> and in the end it just not as simple and pretty as nameref.
>>
>> Fwiw here is a robust and simple solution for in_:
>>
>> _in () {
>>   local e t
>>   t="${2:?}[@]";
>>   for e in "${!t}"; do [[ $1 = "$e" ]] && return 0;done
>>   return 1;
>> }
>>
>
> Not robust due to the name conflicts with "e" or "t". There's also no good way
> to generate a list of locals without parsing "local" output (i'd rather live
> with the conflicts). I usually store indirect references in the positional
> parameters for that reason. Proper encapsulation is impossible.

Ah true, thanks for the reminder that also kinda prove my first point.

Reply via email to