[Click] Scoping/naming issues

Philip Prindeville philipp_subx at redfish-solutions.com
Mon Jan 17 19:55:48 EST 2011


Yeah, it especially makes sense to have arpfoo be global if it needs to be accessible from two different elementclass's, one that deals with the IP flow (input [0] and output [0]) and another one that deals strictly with the ARP request/reply flow (input [1] and output [1]).

Someone else will have to come up with the patches...  I've not yet dabbled in the code itself.


On 1/17/11 4:35 PM, Eddie Kohler wrote:
> Hi Philip,
>
> I can see why you thought compound elements would work that way, but they don't.  They are very strictly encapsulated: all connections to other elements must take place through explicit inputs and outputs.
>
> I admit it would make sense to do it the way you've imagined.  Patches welcome...
>
> Eddie
>
>
> On 1/15/11 2:53 PM, Philip Prindeville wrote:
>> I've got a configuration where I do:
>>
>> ...
>> arpfoo :: ARPQuerier(...);
>>
>> elementclass Bar {
>> ...
>>       class :: classifier(...);
>> ...
>>        class [2] ->   [1] arpfoo;
>> ...
>> }
>>
>>
>> but it complains that "unknown element class 'arpfoo'" in a few places, and that input 1 isn't used...
>>
>> So I'm confused.  Everything is scoped globally... even stuff defined within an elementclass gets scoped globally.
>>
>> Why then can't I access a global variable from within an elementclass's scope?
>>
>> What am I missing?
>>
>> Thanks,
>>
>> -Philip



More information about the click mailing list