If we assert that no directive is a prefix of any other, it might be a good
invariant to keep.

We did that in the AMD build system. Theirs was a bit more stringent: no
token could grep-match (i.e. be a substring of) any other. The rationale
was greppability.
--phone is hard.
On May 29, 2014 8:50 AM, "Anthony Sottile" <notifications@github.com> wrote:

> In tests/compile_test.py:
>
> > +#end filter
> > +
> > +
> > +#for i in $gen()
> > +    #if $i == 2
> > +        #continue
> > +    #end if
> > +    $i#slurp
> > +#end for
> > +    """
> > +    compiled_templates = [compile_source(MEGA_TEMPLATE) for _ in range(5)]
> > +    assert len(set(compiled_templates)) == 1
> > +
> > +    # Make sure we got all of the directives
> > +    for directive_name in directiveNamesAndParsers:
> > +        assert '#{0}'.format(directive_name) in MEGA_TEMPLATE
>
> yeah, I realize now that #compiler and #compiler-settings are a source of
> the exact problem you described. I should really kill #compiler since I
> think it's redundant and we don't use it.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/bukzor/yelp_cheetah/pull/102/files#r13187759>.
>