

def haskell_type(view, filename, module_name, line, column, cabal=None):
    result = None
    if hsdev.hsdev_enabled():

        def to_file_pos(r):
            return FilePosition((int(r['line']) - 1), (int(r['column']) - 1))

        def to_region_type(r):
            return RegionType(r['type'], to_file_pos(r['region']['from']), to_file_pos(r['region']['to']))
        ts = autocomplete.hsdev_client.ghcmod_type(filename, (line + 1), (column + 1), ghc=get_ghc_opts(filename))
        if ts:
            return [to_region_type(r) for r in ts]
        return None
    column = sublime_column_to_ghc_column(view, line, column)
    line = (line + 1)
    if hdevtools_enabled():
        result = hdevtools_type(filename, line, column, cabal=cabal)
    if ((not result) and module_name and ghcmod_enabled()):
        result = ghcmod_type(filename, module_name, line, column)
    return (parse_type_output(view, result) if result else None)

dataset/ETHPy150Open SublimeHaskell/SublimeHaskell/haskell_type.py haskell_type/original