Donner 0.8.0-pre
Embeddable browser-grade SVG2 engine
Loading...
Searching...
No Matches
donner::xml::XMLMutation Struct Reference

XML DOM mutation emitted by an incremental source edit. More...

#include "donner/base/xml/XMLDocument.h"

Collaboration diagram for donner::xml::XMLMutation:
[legend]

Public Types

enum class  Kind : std::uint8_t {
  AttributeSet ,
  AttributeRemoved ,
  NodeValueChanged ,
  NodeInserted ,
  NodeRemoved ,
  SubtreeReplaced ,
  SourceDiagnosticChanged
}
 Mutation kind. More...

Public Attributes

Kind kind
 Mutation kind.
XMLNode node
 Mutated node.
XMLQualifiedName attributeName
 Attribute name for attribute mutations.
std::optional< RcStringvalue
 New value when relevant.
std::optional< ParseDiagnosticdiagnostic
 Source diagnostic for diagnostic mutations.
ReparseScope scope = ReparseScope::Document
 Scope that produced the mutation.

Friends

std::ostream & operator<< (std::ostream &os, Kind kind)
 Print an XMLMutation::Kind.

Detailed Description

XML DOM mutation emitted by an incremental source edit.

Member Enumeration Documentation

◆ Kind

enum class donner::xml::XMLMutation::Kind : std::uint8_t
strong

Mutation kind.

Enumerator
AttributeSet 

Attribute value was set.

AttributeRemoved 

Attribute was removed.

NodeValueChanged 

Text-like node value changed.

NodeInserted 

Node was inserted.

NodeRemoved 

Node was removed.

SubtreeReplaced 

A subtree was replaced.

SourceDiagnosticChanged 

A source diagnostic changed.


The documentation for this struct was generated from the following file: