<commit_before>namespace YAMP
{
    using System;
    using System.Collections.Generic;
    using YAMP.Exceptions;

    /// <summary>
    /// Operator for arguments () for symbols (usually functions!).
    /// </summary>
    class ArgsOperator : RightUnaryOperator
    {
        #region Fields

        readonly Expression _content;

		#endregion

		#region ctor

		public ArgsOperator() : 
            this(null)
        {
        }

        public ArgsOperator(Expression content) :
            base("(", 1000)
        {
            _content = content;
        }

		#endregion

		#region Creation

		public override Operator Create()
        {
            return new ArgsOperator();
        }

        public override Operator Create(ParseEngine engine)
        {
            var start = engine.Pointer;

            //Arguments need to be attached directly.
            if (start != 0 && !ParseEngine.IsWhiteSpace(engine.Characters[start - 1]) && !ParseEngine.IsNewLine(engine.Characters[start - 1]))
            {
                var query = engine.Query;
                var line = engine.CurrentLine;
                var column = engine.CurrentColumn;
                var content = engine.Elements.FindExpression<BracketExpression>().Scan(engine);
                var length = engine.Pointer - start;

                return new ArgsOperator(content)
                {
                    Query = query,
                    StartLine = line,
                    StartColumn = column,
                    Length = length
                };
            }

            return null;
        }

        #endregion
<commit_msg>Expose the content<commit_after>namespace YAMP
{
    using System;
    using System.Collections.Generic;
    using YAMP.Exceptions;

    /// <summary>
    /// Operator for arguments () for symbols (usually functions!).
    /// </summary>
    class ArgsOperator : RightUnaryOperator
    {
        #region Fields

        readonly Expression _content;

		#endregion

		#region ctor

		public ArgsOperator() : 
            this(null)
        {
        }

        public ArgsOperator(Expression content) :
            base("(", 1000)
        {
            _content = content;
        }

		#endregion

		#region Creation

		public override Operator Create()
        {
            return new ArgsOperator();
        }

        public override Operator Create(ParseEngine engine)
        {
            var start = engine.Pointer;

            //Arguments need to be attached directly.
            if (start != 0 && !ParseEngine.IsWhiteSpace(engine.Characters[start - 1]) && !ParseEngine.IsNewLine(engine.Characters[start - 1]))
            {
                var query = engine.Query;
                var line = engine.CurrentLine;
                var column = engine.CurrentColumn;
                var content = engine.Elements.FindExpression<BracketExpression>().Scan(engine);
                var length = engine.Pointer - start;

                return new ArgsOperator(content)
                {
                    Query = query,
                    StartLine = line,
                    StartColumn = column,
                    Length = length
                };
            }

            return null;
        }

        #endregion

        #region Properties

        public Expression Content
        {
            get { return _content; }
        }

        #endregion

{'fraction_non_alphanumeric': 0.08384819064430715, 'fraction_numerical': 0.004118858487790526, 'mean_word_length': 1.4442846872753414, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5930637', 'n_tokens_mistral': 870, 'n_tokens_neox': 791, 'n_words': 209}