# File lib/yard/tags/library.rb, line 158
        def define_tag(label, tag, meth = nil)
          tag_meth = tag_method_name(tag)
          if meth.is_a?(Class) && Tag > meth
            class_eval "def \#{tag_meth}(text)\n\#{meth}.new(\#{tag.inspect}, text)\nend\n", __FILE__, __LINE__
          else
            class_eval "def \#{tag_meth}(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