/* * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.yangtools.yang.parser.builder.api; import java.util.List; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode; import org.opendaylight.yangtools.yang.model.api.YangNode; import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint; import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint; import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint; /** * Interface for builders of 'typedef' statement. */ public interface TypeDefinitionBuilder extends TypeAwareBuilder, SchemaNodeBuilder, GroupingMember { void setQName(QName qname); TypeDefinition build(YangNode parent); List getRanges(); void setRanges(List ranges); List getLengths(); void setLengths(List lengths); List getPatterns(); void setPatterns(List patterns); Integer getFractionDigits(); void setFractionDigits(Integer fractionDigits); List getUnknownNodes(); Object getDefaultValue(); void setDefaultValue(Object defaultValue); String getUnits(); void setUnits(String units); }