Project

General

Profile

csInfo #4044

Updated by Redmine Admin 7 days ago

 
 {{kroki(d2) 
 D2 Parser: { 
   shape: class 

   # Default visibility is + so no need to specify. 
   +reader: io.RuneReader 
   readerPos: d2ast.Position 

   # Private field. 
   -lookahead: "[]rune" 

   # Protected field. 
   # We have to escape the # to prevent the line from being parsed as a comment. 
   \#lookaheadPos: d2ast.Position 

   +peek(): (r rune, eof bool) 
   rewind() 
   commit() 

   \#peekn(n int): (s string, eof bool) 
 } 

 "github.com/terrastruct/d2parser.git" -> D2 Parser 
 }} 

 The diagram above is shown by just simply put sample diagram code copied from [kroki.io](https://kroki.io) inside a macro. 
 The macro language is described in [redmine-kroki](https://github.com/JeffDess/redmine-kroki) plugin page. 

 This is the exact code: 
 ``` 

 {{kroki(d2) 
 D2 Parser: { 
   shape: class 

   # Default visibility is + so no need to specify. 
   +reader: io.RuneReader 
   readerPos: d2ast.Position 

   # Private field. 
   -lookahead: "[]rune" 

   # Protected field. 
   # We have to escape the # to prevent the line from being parsed as a comment. 
   \#lookaheadPos: d2ast.Position 

   +peek(): (r rune, eof bool) 
   rewind() 
   commit() 

   \#peekn(n int): (s string, eof bool) 
 } 

 "github.com/terrastruct/d2parser.git" -> D2 Parser 
 }} 

 ```

Back