/// <summary> /// Match { parser } /// Notice this will handle all the scope. /// </summary> /// <typeparam name="V"></typeparam> /// <param name="parser"></param> /// <returns></returns> public static Parserc.Parser <T, V> BracelLR <V>(this Parserc.Parser <T, V> parser) { return(Match <T_PUNC_BRACEL>().Bind(_ => { Env.PushScope(); return parser; }).Bind(result => Match <T_PUNC_BRACER>().Bind(_ => { Env.PopScope(); return Result <T, V>(result); }))); }