diff options
author | wtschueller <wtschueller@users.noreply.github.com> | 2014-07-12 18:34:46 (GMT) |
---|---|---|
committer | wtschueller <wtschueller@users.noreply.github.com> | 2014-07-12 18:34:46 (GMT) |
commit | 470143192d0c8cf90ad84a66226d48060cc713db (patch) | |
tree | c6b8ab35c3a1d48b14a29e2f3fc395b8db5edb10 /testing/062_namespace_resolution.tcl | |
parent | 06bd53ac6acee5fb83d9f2b5ded1c55c8a069b29 (diff) | |
download | Doxygen-470143192d0c8cf90ad84a66226d48060cc713db.zip Doxygen-470143192d0c8cf90ad84a66226d48060cc713db.tar.gz Doxygen-470143192d0c8cf90ad84a66226d48060cc713db.tar.bz2 |
Tcl: correct namespace resolution in case of INLINE_SOURCES = YES
Diffstat (limited to 'testing/062_namespace_resolution.tcl')
-rw-r--r-- | testing/062_namespace_resolution.tcl | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/testing/062_namespace_resolution.tcl b/testing/062_namespace_resolution.tcl new file mode 100644 index 0000000..dcc6701 --- /dev/null +++ b/testing/062_namespace_resolution.tcl @@ -0,0 +1,68 @@ +#// objective: tests correct namespace resolution, only references/referencedby relations are relevant +#// check: namespacen1.xml +#// check: namespacen2.xml +#// check: namespacen3.xml +#// config: REFERENCED_BY_RELATION = yes +#// config: REFERENCES_RELATION = yes +#// config: EXTRACT_ALL = yes +#// config: INLINE_SOURCES = yes + +# now: combine namespace eval and qualified names +namespace eval n1 { + proc p1 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + p2 + return + } + proc p2 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + return + } + namespace eval n1 { + proc p1 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + return + } + } +} +# same thing, but fully qualified proc names +namespace eval ::n2 {} +namespace eval ::n2::n2 {} +proc ::n2::p1 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + p2 + return +} +proc ::n2::p2 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + return +} +proc ::n2::n2::p2 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + return +} +# same thing, without leading :: +namespace eval n3 {} +namespace eval n3::n3 {} +proc n3::p1 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + p2 + return +} +proc n3::p2 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + return +} +proc n3::n3::p2 args { + array set info [info frame 0]; puts -nonewline ->$info(proc) + return +} +# now, check with tcl what is called +n1::p1 +puts "" +n2::p1 +puts "" +n3::p1 +puts "" +exit + |