---
name: "Lucy::Plan::FieldType"
section: "3pm"
platform: "linux"
package: "liblucy-perl"
version: "0.3.3-7+b1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/Lucy::Plan::FieldType"
---

# Lucy::Plan::FieldType(3pm)

Define a field's behavior.

## NAME

Lucy::Plan::FieldType - Define a field's behavior.

## SYNOPSIS

```
    my @sortable;
    for my $field ( @{ $schema->all_fields } ) {
        my $type = $schema->fetch_type($field);
        next unless $type->sortable;
        push @sortable, $field;
    }
```

## DESCRIPTION

FieldType is an abstract class defining a set of traits and behaviors which may be associated with one or more field names.

Properties which are common to all field types include `"boost"`, `"indexed"`, `"stored"`, `"sortable"`, `"binary"`, and `"similarity"`.

The `"boost"` property is a floating point scoring multiplier which defaults to 1.0.  Values greater than 1.0 cause the field to contribute more to a document's score, lower values, less.

The `"indexed"` property indicates whether the field should be indexed (so that it can be searched).

The `"stored"` property indicates whether to store the raw field value, so that it can be retrieved when a document turns up in a search.

The `"sortable"` property indicates whether search results should be sortable based on the contents of the field.

The `"binary"` property indicates whether the field contains binary or text data.  Unlike most other properties, `"binary"` is not settable.

The `"similarity"` property is a Similarity object which defines matching and scoring behavior for the field.  It is required if the field is `"indexed"`.

## METHODS

### *get\_boost()*

Accessor for `"boost"`.

### *indexed()*

Accessor for `"indexed"`.

### *stored()*

Accessor for `"stored"`.

### *sortable()*

Accessor for `"sortable"`.

### *binary()*

Indicate whether the field contains binary data.

## INHERITANCE

Lucy::Plan::FieldType isa Lucy::Object::Obj.
