pugs-DrIFT-2.2.3.1: DrIFT with pugs-specific rules.

DrIFT.Perl6Class

Synopsis

Documentation

showMooseRoleDef

Arguments

:: NamespaceMangler 
-> String 
-> String

Perl 6 role definition

showPerl6RoleDef

Arguments

:: NamespaceMangler 
-> String 
-> String

Perl 6 role definition

showMooseClassDef

Arguments

:: NamespaceMangler

(e.g, (v6::AST:: ++))

-> String

role name (Hs datatype)

-> String

class name (Hs variant)

-> [(String, String, String)]

member type+name pairs

-> String

Perl 6 class definition

showPerl6ClassDef

Arguments

:: NamespaceMangler

(e.g, (v6::AST:: ++))

-> String

role name (Hs datatype)

-> String

class name (Hs variant)

-> [(String, String, String)]

member type+name pairs

-> String

Perl 6 class definition

qt :: String -> Doc

showKV :: (PLit a, PLit b) => (a, b) -> Doc

ts :: PLit a => a -> Doc

qbraces :: [Doc] -> [Doc]

class (Typeable a, Show a) => PLit a where

typeclass for dumping literals in Perl 6 source code.

Methods

plShow :: a -> String

Instances

PLit String 
(Typeable a, Show a) => PLit a 
PLit ByteString 
PLit ByteString 
PLit a => PLit [a] 
PLit a => PLit (Maybe a) 

showStringLiteral :: String -> [Doc]

Turn a string into source-code fitting Perl 6 string literal. May result in code for concatenation of several such literals. The restult is a [Doc] rather than a single String so that calling pretty-printers can render linebreaks at the correct places trivially with cat.

showSLiteral :: ByteString -> [Doc]

An FPS version of showStringLiteral. Since the pretty-printing library isn't fps, this isn't as fast as it might have been.

showLLiteral :: ByteString -> [Doc]

An FPS version of showStringLiteral. Since the pretty-printing library isn't fps, this isn't as fast as it might have been.