Package org.intellij.lang.annotations

# Annotation Interface Subst

@Retention(CLASS) @Target({METHOD,FIELD,LOCAL_VARIABLE,PARAMETER}) public @interface Subst
Specifies the replacement value for non-constant variables and method return values. This may help static analyzers to properly parse the concatenation of several values which is used in @`Language` or `Pattern` context.

Example:

     @Subst("Tahoma")
     final String font = new JLabel().getFont().getName();

     @Language("HTML")
     String message = "<html><span style='font: " + font + "; font-size:smaller'>"
       + ... + "</span></html>";

Here the parser assumes that when `font` appears in the concatenation it's value is `"Tahoma"`, so it can continue parsing the concatenation.

See Also:
  - `Language`
  - `Pattern`

## Required Element Summary

Required Elements
Modifier and Type
Required Element
Description
`String`
`value`

## Element Details

### value

String value