import{WhiteSpace as t}from"../../tokenizer/types.mjs";import"../../tokenizer/char-code-definitions.mjs";import"../../tokenizer/TokenStream.mjs";function e(){return this.tokenIndex>0&&this.lookupType(-1)===t?this.tokenIndex>1?this.getTokenStart(this.tokenIndex-1):this.firstCharOffset:this.tokenStart}const n="Raw",i={value:String};function o(t,n){const i=this.getTokenStart(this.tokenIndex);let o;return this.skipUntilBalanced(this.tokenIndex,t||this.consumeUntilBalanceEnd),o=n&&this.tokenStart>i?e.call(this):this.tokenStart,{type:"Raw",loc:this.getLocation(i,o),value:this.substring(i,o)}}function s(t){this.tokenize(t.value)}export{s as generate,n as name,o as parse,i as structure};