public StyleValueImporter(UnityEditor.AssetImporters.AssetImportContext context)
        {
            if (context == null)
            {
                throw new System.ArgumentNullException(nameof(context));
            }

            m_Context   = context;
            m_AssetPath = context.assetPath;
            m_Parser    = new Parser();
            m_Builder   = new StyleSheetBuilder();
            m_Errors    = new StyleSheetImportErrors()
            {
                assetPath = context.assetPath
            };
            m_Validator = new StyleValidator();
        }
        protected virtual void OnImportError(StyleSheetImportErrors errors)
        {
            if (m_Context == null)
            {
                return;
            }

            foreach (var e in errors)
            {
                if (e.isWarning)
                {
                    m_Context.LogImportWarning(e.ToString(), e.assetPath, e.line);
                }
                else
                {
                    m_Context.LogImportError(e.ToString(), e.assetPath, e.line);
                }
            }
        }
        protected virtual void OnImportError(StyleSheetImportErrors errors)
        {
            if (m_Context == null)
            {
                return;
            }

            foreach (var e in errors)
            {
                var errorContext = string.IsNullOrEmpty(e.assetPath)
                    ? null
                    : AssetDatabase.LoadMainAssetAtPath(e.assetPath);

                if (e.isWarning)
                {
                    m_Context.LogImportWarning(e.ToString(glossary), e.assetPath, e.line, errorContext);
                }
                else
                {
                    m_Context.LogImportError(e.ToString(glossary), e.assetPath, e.line, errorContext);
                }
            }
        }