    # File lib/yard/tags/library.rb, line 119
            def define_tag(label, tag, meth = nil)
              if meth.is_a?(Class) && Tag > meth
                class_eval "def \#{tag}_tag(text)\n\#{meth}.new(\#{tag.inspect}, text)\nend\n", __FILE__, __LINE__
              else
                class_eval "def \#{tag}_tag(text)\nsend_to_factory(\#{tag.inspect}, \#{meth.inspect}, text)\nend\n", __FILE__, __LINE__
              end

              @labels ||= SymbolHash.new(false)
              @labels.update(tag => label)
              @factory_methods ||= SymbolHash.new(false)
              @factory_methods.update(tag => meth)
              tag
            end