It seems your problem is that Windows is not case sensitive when opening files. But its file systems are case preserving so you can overcome this by testing that the case of the file that was loaded is the same as the case of the mixin name. Testing the file name would address the root cause of the problem and avoid dependence on the internals of the mixins.

Retreiving the case of the file isn't elegant, but it is easy enough - just read the directory to find the file name.

But a quick review of the MixinFactory::Factory->class() method, combined with your control over the mixin modules to ensure they have package statements with package names corresponding to their file names suggests that either of your proposed tests should be adequate.


In reply to Re^3: Finding out whether a module contains a certain package by ig
in thread Finding out whether a module contains a certain package by rovf

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.