protected string ExposeTokenName(IMarkdownToken token) { var tokenName = token.GetType().Name; tokenName = TrimStringStart(tokenName, "Markdown"); tokenName = TrimStringStart(tokenName, "Gfm"); tokenName = TrimStringEnd(tokenName, "Token"); tokenName = TrimStringEnd(tokenName, "Block"); tokenName = TrimStringEnd(tokenName, "Inline"); return(tokenName); }
public StringBuffer Render(IMarkdownToken token) { try { // double dispatch. return(((dynamic)Renderer).Render((dynamic)this, (dynamic)token, (dynamic)token.Context)); } catch (RuntimeBinderException ex) { throw new InvalidOperationException($"Unable to handle token: {token.GetType().Name}, rule: {token.Rule.Name}", ex); } }
public StringBuffer Render(IMarkdownToken token) { try { // double dispatch. return ((dynamic)Renderer).Render((dynamic)this, (dynamic)token, (dynamic)token.Context); } catch (RuntimeBinderException ex) { throw new InvalidOperationException($"Unable to handle token: {token.GetType().Name}, rule: {token.Rule.Name}", ex); } }
protected string ExposeTokenName(IMarkdownToken token) { var tokenName = token.GetType().Name; tokenName = TrimStringStart(tokenName, "Markdown"); tokenName = TrimStringStart(tokenName, "Gfm"); tokenName = TrimStringEnd(tokenName, "Token"); tokenName = TrimStringEnd(tokenName, "Block"); tokenName = TrimStringEnd(tokenName, "Inline"); return tokenName; }