def main():
    """ Main function
    """
    args = init_args()

    try:
        dict_data = json.loads(open(args.json_file).read())
    except __HOLE__:
        print('Error: no such file {}'.format(args.json_file))
        exit()

    j2m = JSON2Mantle()

    # Gets meta data
    j2m.class_prefix = args.prefix if args.prefix else ''
    if args.author:
        j2m.meta_data['author'] = args.author

    # Get the file base name
    file_basename = os.path.basename(args.json_file)

    # Eliminating filename extension
    class_name = file_basename.split('.')[0]

    j2m.generate_properties(dict_data, class_name)

    # .h and .m data for rendering
    render_h, render_m = j2m.get_template_data()

    template_renderer = TemplateRenderer(render_h, render_m, args.output_dir)
    template_renderer.render()
dataset/ETHPy150Open sutar/JSON2Mantle/JSON2Mantle/cli.py/main