All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.vladsch.flexmark.ext.attributes.internal.AttributesFormatOptions Maven / Gradle / Ivy

There is a newer version: 0.64.8
Show newest version
package com.vladsch.flexmark.ext.attributes.internal;

import com.vladsch.flexmark.ext.attributes.AttributeImplicitName;
import com.vladsch.flexmark.ext.attributes.AttributeValueQuotes;
import com.vladsch.flexmark.ext.attributes.AttributesExtension;
import com.vladsch.flexmark.util.data.DataHolder;
import com.vladsch.flexmark.util.data.MutableDataHolder;
import com.vladsch.flexmark.util.data.MutableDataSetter;
import com.vladsch.flexmark.util.format.options.DiscretionaryText;
import org.jetbrains.annotations.NotNull;

class AttributesFormatOptions implements MutableDataSetter {
    final public boolean attributesCombineConsecutive;
    final public boolean attributesSort;
    final public DiscretionaryText attributesSpaces;
    final public DiscretionaryText attributeEqualSpace;
    final public AttributeValueQuotes attributeValueQuotes;
    final public AttributeImplicitName attributeIdFormat;
    final public AttributeImplicitName attributeClassFormat;

    public AttributesFormatOptions(DataHolder options) {
        attributesCombineConsecutive = AttributesExtension.FORMAT_ATTRIBUTES_COMBINE_CONSECUTIVE.get(options);
        attributesSort = AttributesExtension.FORMAT_ATTRIBUTES_SORT.get(options);
        attributesSpaces = AttributesExtension.FORMAT_ATTRIBUTES_SPACES.get(options);
        attributeEqualSpace = AttributesExtension.FORMAT_ATTRIBUTE_EQUAL_SPACE.get(options);
        attributeValueQuotes = AttributesExtension.FORMAT_ATTRIBUTE_VALUE_QUOTES.get(options);
        attributeIdFormat = AttributesExtension.FORMAT_ATTRIBUTE_ID.get(options);
        attributeClassFormat = AttributesExtension.FORMAT_ATTRIBUTE_CLASS.get(options);
    }

    @NotNull
    @Override
    public MutableDataHolder setIn(@NotNull MutableDataHolder dataHolder) {
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTES_COMBINE_CONSECUTIVE, attributesCombineConsecutive);
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTES_SORT, attributesSort);
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTES_SPACES, attributesSpaces);
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTE_EQUAL_SPACE, attributeEqualSpace);
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTE_VALUE_QUOTES, attributeValueQuotes);
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTE_ID, attributeIdFormat);
        dataHolder.set(AttributesExtension.FORMAT_ATTRIBUTE_CLASS, attributeClassFormat);
        return dataHolder;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy