# Methods common to all conversions

Conversions represent the (idealized) computation of patterns in one representation from patterns in another representation. They are used to implement (`arbitrary_conversion_connection`) or set up (e.g., populate matrices) connections between layers.

## description

    some_conv description

The description of `some_conv` will contain additional elements `Source` and `Target` for the representations converted. There will also be a `Weight` element used to determined priorities (lower is more important) over other conversions. The cache of results is also described by `Cache size`, and `Cache items` contains a reference to the `list_cache` method. If a fallback conversion has been established, this will also be listed under `Fallback`.

## add_fallback

    some_conv add_fallback fb_conv

Register `fb_conv` as the fallback for `some_conv`. `fb_conv` is used if `some_conv` would otherwise return the empty (no rep) pattern.

## set_source

    some_conv set_source src_rep

Attempt to set the source representation of `some_conv` to `src_rep`. Some subtypes may reject the attempt.

## set_target

    some_conv set_target tgt_rep

Attempt to set the target representation of `some_conv` to `tgt_rep`. Some subtypes may reject the attempt.

## get_source

    some_conv get_source

Returns the source representation of `some_conv`.

## get_source

    some_conv get_target

Returns the target representation of `some_conv`.

## list_cache

    some_conv list_cache

List the source-target pattern-pairs in the cache for some_conv.

## set_weight

    some_conv set_weight weight

Set the weight of `some_conv` to the floating point `weight`.

## set_auto_use

    some_conv set_auto_use 1
    some_conv set_auto_use 0

Allow (1) or forbid (0) `some_conv` to be found in searches for conversions between the source and target representation of `some_conv`. This will affect the target representation's `find_conversion`, attempts to `autoconnect` layers, and other searches, such as in the automatic creation of `conversion_chain`s.

## apply

    some_conv apply in_pattern

Return a pattern that is the result of applying `some_conv` to `in_pattern`.