2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.yangtools.yang.parser.builder.api;
10 import java.util.List;
12 import org.opendaylight.yangtools.yang.common.QName;
13 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
14 import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
15 import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
16 import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
19 * Interface for builders of 'typedef' statement.
21 public interface TypeDefinitionBuilder extends TypeAwareBuilder, SchemaNodeBuilder, GroupingMember {
23 void setQName(QName qname);
25 TypeDefinition<?> build();
27 List<RangeConstraint> getRanges();
29 void setRanges(List<RangeConstraint> ranges);
31 List<LengthConstraint> getLengths();
33 void setLengths(List<LengthConstraint> lengths);
35 List<PatternConstraint> getPatterns();
37 void setPatterns(List<PatternConstraint> patterns);
39 Integer getFractionDigits();
41 void setFractionDigits(Integer fractionDigits);
43 Object getDefaultValue();
45 void setDefaultValue(Object defaultValue);
49 void setUnits(String units);