コード例 #1
0
        public string TranslateLine(string line)
        {
            if (line == null)
            {
                throw new ArgumentNullException(nameof(line));
            }

            _lineNumber++;
            line = line.Replace("\r", "");

            var(ok, result) = _alignHandler.Handle(_lineNumber, line);
            if (ok)
            {
                return(result);
            }

            (ok, result) = _jsHandler.Handle(_lineNumber, line);
            if (ok)
            {
                return(result);
            }

            var tokens = ParseInterpolatedString(line);

            return("output(" + string.Join(" + ", tokens.Select(token => token.ToString())) + ");");
        }