/* * Copyright (c) 2014 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 */ /** * Utility classes and implementations for concepts defined in yang-model-api. * * *

Base Types

* * YANG specification defines several base types, for which YANG model does not * exists, but have same properties as derived types. This package provides * implementation of {@link org.opendaylight.yangtools.yang.model.api.TypeDefinition} * interface and it's subinterfaces which represent YANG base types and * types derived from them. *

* YANG Specification implicitly defines two types of base types - ones with default version, * and ones which needs to be derived. * *

Base built-in types with default instance and semantics

* *
*
empty
*
A leaf that does not have any value - {@link org.opendaylight.yangtools.yang.model.util.EmptyType}
*
binary
*
Any binary data - {@link org.opendaylight.yangtools.yang.model.util.BinaryType} *
boolean
*
"true" or "false" - {@link org.opendaylight.yangtools.yang.model.util.BinaryType}
*
int8
*
8-bit signed integer - {@link org.opendaylight.yangtools.yang.model.util.Int8}
*
int16
*
16-bit signed integer - {@link org.opendaylight.yangtools.yang.model.util.Int16}
*
int32
*
32-bit signed integer - {@link org.opendaylight.yangtools.yang.model.util.Int32}
*
int64
*
64-bit signed integer - {@link org.opendaylight.yangtools.yang.model.util.Int64}
*
uint8
*
8-bit unsigned integer -{@link org.opendaylight.yangtools.yang.model.util.Uint8}
*
uint16
*
16-bit unsigned integer - {@link org.opendaylight.yangtools.yang.model.util.Int16}
*
uint32
*
32-bit unsigned integer - {@link org.opendaylight.yangtools.yang.model.util.Int32}
*
uint64
*
64-bit unsigned integer -{@link org.opendaylight.yangtools.yang.model.util.Int64}
*
instance-identifier
*
References a data tree node - {@link org.opendaylight.yangtools.yang.model.util.InstanceIdentifier}
*
string
*
{@link org.opendaylight.yangtools.yang.model.util.StringType}
*
* * Common trait of base types with default instance is, that there is no requirement * for user input in YANG schema to further modify this types. *

* The implementation classes for these base types contains static method getInstance() * which provides reusable {@link org.opendaylight.yangtools.concepts.Immutable} instance of type. * *

Base built-in types without default instance

* *
*
bits
*
A set of bits or flags - {@link org.opendaylight.yangtools.yang.model.util.BitsType}
*
decimal64
*
64-bit signed decimal number - {@link org.opendaylight.yangtools.yang.model.util.Decimal64}
*
enumeration
*
Enumerated strings - {@link org.opendaylight.yangtools.yang.model.util.EnumerationType}
*
union
*
Choice of member types - {@link org.opendaylight.yangtools.yang.model.util.UnionType}
*
identity-ref
*
A reference to an abstract identity - {@link org.opendaylight.yangtools.yang.model.util.IdentityrefType}
*
leafref
*
A reference to a leaf instance - {@link org.opendaylight.yangtools.yang.model.util.Leafref}
*
* * Common trait of these base types without default instance is, that they require * user input in YANG schema to create instance of this types, and may have infinity number of * possible permutations. *

* The implementations have static factory method create(SchemaPath,...) * which provides {@link org.opendaylight.yangtools.concepts.Immutable} instance of type. * */ package org.opendaylight.yangtools.yang.model.util;