nv-string-comment
install
- npm install nv-string-comment
usage
example
from string generator
const {
STATE_DICT,
TYPE_DICT,
lc_from_generator,
blk_from_generator
} = require("nv-string-comment")
const {sync_gen_from_str} = require("nv-string-stream")
> STATE_DICT
{ init: 0, executing: 1, succ: 2, eof: 3, asterisk: 4 }
>
> TYPE_DICT
{ line_comment: 0, blk_comment: 1 }
>
var lc = "abc\\tx xx\n"
var g = sync_gen_from_str(lc)
var pre_padding = "我你他"
lc_from_generator(g,pre_padding)
{ state: 2, //STATE_DICT.succ
g: Object [Generator] {},
rslt: '我你他abc\tx xx',
ch: ''
}
var lc = "abc\\tx xx\r"
var g = sync_gen_from_str(lc)
lc_from_generator(g,pre_padding)
{
state: 2, //STATE_DICT.succ
g: Object [Generator] {},
rslt: '我你他abc\tx xx',
ch: ''
}
var lc = "abc\\t\nrttt"
var g = sync_gen_from_str(lc)
var d = lc_from_generator(g,pre_padding)
/*
{ state: 2, g: Object [Generator] {}, rslt: '我你他abc\t', ch: '' }
> d.g.next()
{ value: 'r', done: false }
> d.g.next()
{ value: 't', done: false }
> d.g.next()
{ value: 't', done: false }
> d.g.next()
{ value: 't', done: false }
>
*/
var lc = "abc"
var g = sync_gen_from_str(lc)
var d = lc_from_generator(g)
> d
{ state: 3, //STATE_DICT.eof
g: Object [Generator] {}, rslt: 'abc', ch: '' }
> STATE_DICT.eof
3
var lc = "abc\\"
var g = sync_gen_from_str(lc)
var d = lc_from_generator(g)
> d
{ state: 1, g: Object [Generator] {}, rslt: 'abc', ch: '\\' }
> STATE_DICT.executing
1
>
var bc = "abc\ndef\tghi*/"
var g = sync_gen_from_str(bc)
var pre_padding = "我你他"
var d = blk_from_generator(g,pre_padding)
> d
{
state: 2,
g: Object [Generator] {},
rslt: '我你他abc\ndef\tghi',
ch: ''
}
> STATE_DICT.succ
2
>
var bc = "abc\nd\\u0000ef\tghi*"
var g = sync_gen_from_str(bc)
var d = blk_from_generator(g,pre_padding)
> d
{
state: 4,
g: Object [Generator] {},
rslt: '我你他abc\nd\x00ef\tghi',
ch: '*'
}
>
> STATE_DICT.asterisk
4
>
var bc = "abc\nd\\u0000ef\tghi"
var g = sync_gen_from_str(bc)
var d = blk_from_generator(g,pre_padding)
> d
{
state: 3,
g: Object [Generator] {},
rslt: '我你他abc\nd\x00ef\tghi',
ch: ''
}
> STATE_DICT.eof
3
>
var bc = "abc\nd\\u0000ef\tghi\\"
var g = sync_gen_from_str(bc)
var d = blk_from_generator(g,pre_padding)
> d
{
state: 1,
g: Object [Generator] {},
rslt: '我你他abc\nd\x00ef\tghi',
ch: '\\'
}
> STATE_DICT.executing
1
>
API
- STATE_DICT
- lc_from_generator(g,pre_padding='')
- blk_from_generator(g,pre_padding='')
- TYPE_DICT
- from_generator(g,typ,pre_padding='')
LICENSE