# AppFunctionDataTypeMetadata

Artifact: [androidx.appfunctions:appfunctions](https://developer.android.com/jetpack/androidx/releases/appfunctions) [View Source](https://cs.android.com/search?q=file:androidx/appfunctions/metadata/AppFunctionDataTypeMetadata.kt+class:androidx.appfunctions.metadata.AppFunctionDataTypeMetadata) Added in [1.0.0-rc01](https://developer.android.com/jetpack/androidx/releases/appfunctions#1.0.0-rc01)

*** ** * ** ***


```
public abstract class AppFunctionDataTypeMetadata
```

<br />

Known direct subclasses [AppFunctionAllOfTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAllOfTypeMetadata), [AppFunctionArrayTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionArrayTypeMetadata), [AppFunctionBooleanTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionBooleanTypeMetadata), [AppFunctionBytesTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionBytesTypeMetadata), [AppFunctionDoubleTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDoubleTypeMetadata), [AppFunctionFloatTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionFloatTypeMetadata), [AppFunctionIntTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionIntTypeMetadata), [AppFunctionLongTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionLongTypeMetadata), [AppFunctionObjectTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionObjectTypeMetadata), [AppFunctionOneOfTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionOneOfTypeMetadata), [AppFunctionParcelableTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionParcelableTypeMetadata), [AppFunctionReferenceTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionReferenceTypeMetadata), [AppFunctionStringTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionStringTypeMetadata), [AppFunctionUnitTypeMetadata](https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionUnitTypeMetadata)

|---|---|
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAllOfTypeMetadata` | Defines the schema of a single object data type that is a composition of all of the other types in the `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAllOfTypeMetadata#matchAll()` list. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionArrayTypeMetadata` | Defines the schema of an array data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionBooleanTypeMetadata` | Defines the schema of a boolean data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionBytesTypeMetadata` | Defines the schema of a byte array data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDoubleTypeMetadata` | Defines the schema of a double data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionFloatTypeMetadata` | Defines the schema of a float data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionIntTypeMetadata` | Defines the schema of a int data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionLongTypeMetadata` | Defines the schema of a long data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionObjectTypeMetadata` | Defines the schema of a object type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionOneOfTypeMetadata` | Defines the schema for a data type that can be one of several possible types, representing a form of polymorphism or a sealed hierarchy. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionParcelableTypeMetadata` | Defines the schema of a Parcelable data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionReferenceTypeMetadata` | Represents a type that reference a data type that is defined in `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionComponentsMetadata`. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionStringTypeMetadata` | Defines the schema of a string data type. |
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionUnitTypeMetadata` | Defines the schema of a unit data type. |

*** ** * ** ***

Base class for defining the schema of an input or output type.

## Summary

| ### Public methods |
|---|---|
| `boolean` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata#equals(kotlin.Any)(https://developer.android.com/reference/java/lang/Object.html other)` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata#getDescription()()` A description of the data type and its intended use. |
| `int` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata#hashCode()()` |
| `final boolean` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata#isNullable()()` Whether the data type is nullable. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionDataTypeMetadata#toString()()` |

## Public methods

### equals

```
public boolean equals(Object other)
```

### getDescription

Added in [1.0.0-rc01](https://developer.android.com/jetpack/androidx/releases/appfunctions#1.0.0-rc01)

```
public final @NonNull String getDescription()
```

A description of the data type and its intended use.

### hashCode

```
public int hashCode()
```

### isNullable

Added in [1.0.0-rc01](https://developer.android.com/jetpack/androidx/releases/appfunctions#1.0.0-rc01)

```
public final boolean isNullable()
```

Whether the data type is nullable.

### toString

```
public @NonNull String toString()
```