###############################################################################
# Copyright (c) 2005, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#

###############################################################################

pluginProvider=Eclipse.org
pluginName=Dynamic Languages Toolkit Ruby Fast Debugger Support

FastDebuggingEngine.name = Fast Ruby Debugger (ruby-debug)
FastDebuggingEngine.description = Fast Ruby Debugger (ruby-debug)

RailsDebuggerPropertyPage.name = Fast Ruby Debugger (ruby-debug)
RailsDebuggerPreferencePage.name = Fast Ruby Debugger (ruby-debug)
