public override void CheckSemantics(Scope scope, List <SemanticError> errors)
        {
            //--------------------------------------------------
            // Por Default, El Nodo No Tiene Errores.
            //--------------------------------------------------
            this.IsOk = true;

            //--------------------------------------------------
            // Buscar Campos Repetidos En La Declaración Del Record.
            //--------------------------------------------------
            var FieldName = this.Fields.Select(x => x.ID.Name).ToArray <string>();

            for (int i = 0; i < FieldName.Length; i++)
            {
                int j = 0;
                while (j < i && FieldName[i] != FieldName[j])
                {
                    j = j + 1;
                }
                if (j < i)
                {
                    errors.Add(SemanticError.PreviousFieldDeclaration(FieldName[i], this.Fields[i]));
                    this.IsOk = false;
                }
            }

            //--------------------------------------------------
            // Hacer 'CheckSemantics' Para Cada Campo.
            //--------------------------------------------------
            foreach (var field in this.Fields)
            {
                field.CheckSemantics(scope, errors);
                this.IsOk &= field.IsOk;
            }
        }