public virtual void Print(ExpressionPrinter expressionPrinter)
            {
                expressionPrinter.Append($"{nameof(EntityReference)}: {EntityType.DisplayName()}");
                if (IsOptional)
                {
                    expressionPrinter.Append("[Optional]");
                }

                if (IncludePaths.Count > 0)
                {
                    // TODO: fully render nested structure of include tree
                    expressionPrinter.Append(
                        " | IncludePaths: "
                        + string.Join(
                            " ", IncludePaths.Select(ip => ip.Value.Count() > 0 ? ip.Key.Name + "->..." : ip.Key.Name)));
                }
            }
        /// <summary>
        /// Creates a compilation options
        /// </summary>
        /// <param name="enableNativeMinification">Flag that indicating to use of native minification</param>
        /// <returns>Compilation options</returns>
        private CompilationOptions CreateCompilationOptions(bool enableNativeMinification)
        {
            IList <string> processedIncludePaths = IncludePaths
                                                   .Select(p => SassCompiler.FileManager.ToAbsolutePath(p))
                                                   .ToList()
            ;

            var options = new CompilationOptions
            {
                IncludePaths   = processedIncludePaths,
                IndentType     = Utils.GetEnumFromOtherEnum <BtIndentType, LshIndentType>(IndentType),
                IndentWidth    = IndentWidth,
                LineFeedType   = Utils.GetEnumFromOtherEnum <BtLineFeedType, LshLineFeedType>(LineFeedType),
                OutputStyle    = enableNativeMinification ? OutputStyle.Compressed : OutputStyle.Expanded,
                Precision      = Precision,
                SourceComments = SourceComments
            };

            return(options);
        }