[Click] dynamic_cast ?
Harald Schiöberg
harald at net.t-labs.tu-berlin.de
Thu Nov 5 09:47:27 EST 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Michael Neufeld wrote:
> Last time I looked Linux kernel mode Click disables RTTI (as well as
> exceptions), so I wouldn't expect dynamic_cast to work in the Linux kernel.
>
> -Mike
Thanks, that's what I almost anticipated. Is there any other solution
that does the same thing in click, some method of Element that one can
use? Basically I need to find out at initialization time whether my
neighbor elements are derived from a special subclass of element.
The "dirty" way would be to implement a "i_am_foo" handler and check for
it's existence....
harald
>
> Harald Schiöberg wrote:
> does anyone know whether this is safe to do in click ?
>
> class Foo : public Element { ... }
> class FooBar : public Foo { ... }
>
> Foo::some_method() {
> Element downstream;
> downstream = output[0].element();
>
> if ( dynamic_cast<Foo>(e) ) {
> ... e is a foo ...
> } else {
> .... e is not a foo ...
> }
> }
>
> I currently have no linuxkernel installation, so I can't check for this
> case, but I see potential breakage, since this requires a bit of
> compiler magic.
>
>>
_______________________________________________
click mailing list
click at amsterdam.lcs.mit.edu
https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>>
- --
Harald Schiöberg
Technische Universität Berlin | T-Laboratories | FG INET
www: http://www.net.t-labs.tu-berlin.de
Phone: +49-(0)30-8353-58476 | Fax: +49-(0)391 534 783 47
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFK8uV/y8wrZ9OvkU0RAlQKAJ455Y1L/Dpjg6rJGsMdQjBNU/H+QQCgy68X
KNaJEw1BRaQ1y27PPzaaR5o=
=pIrY
-----END PGP SIGNATURE-----
More information about the click
mailing list