cubix-0.1.0.0: A framework for multi-language transformation
Safe HaskellNone
LanguageHaskell2010

Cubix.ParsePretty

Synopsis

Documentation

class ParseFile fs where Source #

Methods

parseFile :: FilePath -> IO (Maybe (Term fs (RootSort fs))) Source #

Parses a file with the appropriate parser for the language with signature fs.

Recommended to use with the TypeApplications extension, e.g.: parseFile @MCSig "my_file.c".

Instances

Instances details
ParseFile MPythonSig Source # 
Instance details

Defined in Cubix.ParsePretty

ParseFile MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Methods

parseFile :: FilePath -> IO (Maybe (Term MLuaSig (RootSort MLuaSig))) Source #

ParseFile MJSSig Source # 
Instance details

Defined in Cubix.ParsePretty

Methods

parseFile :: FilePath -> IO (Maybe (Term MJSSig (RootSort MJSSig))) Source #

ParseFile MJavaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Methods

parseFile :: FilePath -> IO (Maybe (Term MJavaSig (RootSort MJavaSig))) Source #

ParseFile MCSig Source # 
Instance details

Defined in Cubix.ParsePretty

Methods

parseFile :: FilePath -> IO (Maybe (Term MCSig (RootSort MCSig))) Source #

class Pretty fs where Source #

Minimal complete definition

pretty

Methods

pretty :: Term fs (RootSort fs) -> String Source #

Pretty-prints a term, using the appropriate pretty-printer for the language with signature fs.

prettyUnsafe :: Term fs l -> String Source #

default prettyUnsafe :: DynCase (Term fs) (RootSort fs) => Term fs l -> String Source #

Instances

Instances details
Pretty MPythonSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MLuaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MJSSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MJavaSig Source # 
Instance details

Defined in Cubix.ParsePretty

Pretty MCSig Source # 
Instance details

Defined in Cubix.ParsePretty

parseLua :: FilePath -> IO (Maybe (MLuaTerm LBlockL)) Source #

NOTE: This reflects the half-finished transition of Lua to annotated terms