DiscussionSupportSystem-0.11.0.2: Discussion support system

Safe HaskellNone

DSS.Parser

Synopsis

Documentation

data Discussion Source

Constructors

Discussion (Maybe Expression) Basiss Claim 

Instances

Eq Discussion 
Read Discussion 
Show Discussion 
ToMarkup (String, Discussion) 

data Basiss Source

Constructors

Basiss [(Maybe Label, Basis)] 

Instances

Eq Basiss 
Read Basiss 
Show Basiss 
ToMarkup (String, Basiss) 

data Label Source

Constructors

Label String 

Instances

Eq Label 
Read Label 
Show Label 
ToMarkup (String, (Maybe Label, Basis)) 

data Basis Source

Instances

Eq Basis 
Read Basis 
Show Basis 
ToMarkup (String, (Maybe Label, Basis)) 
ToMarkup (String, Basis) 

data Url Source

Constructors

Url String 

Instances

Eq Url 
Read Url 
Show Url 

data Book Source

Constructors

Book Isbn (Maybe Pages) 

Instances

Eq Book 
Read Book 
Show Book 

data Quote Source

Constructors

Quote [ExpressionString] 

Instances

Eq Quote 
Read Quote 
Show Quote 

data Isbn Source

Constructors

Isbn String 

Instances

Eq Isbn 
Read Isbn 
Show Isbn 

data Pages Source

Constructors

Pages [Int] 

Instances

Eq Pages 
Read Pages 
Show Pages 

data Claim Source

Constructors

Claim [ExpressionString] 

Instances

Eq Claim 
Read Claim 
Show Claim 
ToMarkup (String, Claim) 

data Expression Source

Constructors

Expression [String] 

Instances

Eq Expression 
Read Expression 
Show Expression 
ToMarkup (String, Maybe Expression) 
ToMarkup (String, Expression) 

parse :: String -> [Discussion]Source

parse discussion

>>> parse "opinion to {hoge.piyo}\ntext\"\"\nclaim \"123{hoge.piyo}\""
[Discussion (Just (Expression ["hoge","piyo"])) (Basiss [(Nothing,QuoteBasis (Quote []))]) (Claim [StringExpression "123",QuoteExpression (Expression ["hoge","piyo"])])]
>>> parse "opinion to {hoge.piyo}\n1:text \"hoge{piyo.foo}bar\"\nurl https://github.com/minamiyama1994\n2 : ISBN 9784798120393 pages ( 1024 , 2048 )\nclaim \"123{hoge.piyo}\""
[Discussion (Just (Expression ["hoge","piyo"])) (Basiss [(Just (Label "1"),QuoteBasis (Quote [StringExpression "hoge",QuoteExpression (Expression ["piyo","foo"]),StringExpression "bar"])),(Nothing,UrlBasis (Url "https://github.com/minamiyama1994")),(Just (Label "2"),BookBasis (Book (Isbn "9784798120393") (Just (Pages [1024,2048]))))]) (Claim [StringExpression "123",QuoteExpression (Expression ["hoge","piyo"])])]
>>> parse "opinion to {hoge.piyo}\n1:text \"hoge{piyo.foo}bar\"\nurl https://github.com/minamiyama1994\n2 : ISBN 9784798120393 pages ( 1024 , 2048 )\n3 : ISBN 9784798120393\nclaim \"123{hoge.piyo}\""
[Discussion (Just (Expression ["hoge","piyo"])) (Basiss [(Just (Label "1"),QuoteBasis (Quote [StringExpression "hoge",QuoteExpression (Expression ["piyo","foo"]),StringExpression "bar"])),(Nothing,UrlBasis (Url "https://github.com/minamiyama1994")),(Just (Label "2"),BookBasis (Book (Isbn "9784798120393") (Just (Pages [1024,2048])))),(Just (Label "3"),BookBasis (Book (Isbn "9784798120393") Nothing))]) (Claim [StringExpression "123",QuoteExpression (Expression ["hoge","piyo"])])]