def METHOD_NAME(cls, definition):
    """Parse a definition
    """
    name, definition = definition.split('=', 1)
    name = name.strip()
    result = [res.strip() for res in definition.split('=')]
    value, aliases = result[0], tuple(result[1:])
    symbol, aliases = (aliases[0], aliases[1:]) if aliases else (None,
                                                                 aliases)
    if name.startswith('['):
        return DimensionDefinition(name, symbol, aliases, value)
    elif name.endswith('-'):
        name = name.rstrip('-')
        return PrefixDefinition(name, symbol, aliases, value)
    else:
        return UnitDefinition(name, symbol, aliases, value)