Overview | Package | Class | Use | Deprecated | Help
| GWT 2.7.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.google.gwt.uibinder.attributeparsers
Class FieldReferenceConverter

    java.lang.Object
      com.google.gwt.uibinder.attributeparsers.FieldReferenceConverter

    public class FieldReferenceConverter

extends java.lang.Object

Deals with field references, e.g. the bits in braces here: `<div class="{style.enabled} fancy {style.impressive}" />`, by converting them to java expressions (with the help of a `Delegate`).

A field reference is one or more segments separated by dots. The first segment is considered to be a reference to a ui field, and succeeding segments are method calls. So, `"{able.baker.charlie}"` becomes `"able.baker().charlie()"`.

A field reference starts with '{' and is followed immediately by a character that can legally start a java identifier—that is a letter, $, or underscore. Braces not followed by such a character are left in place.

For convenience when dealing with generated CssResources, field segments with dashes are converted to camel case. That is, {able.baker-charlie} is the same as {able.bakerCharlie}

Opening braces may be escape by doubling them. That is, "{{foo}" will converted to "{foo}", with no field reference detected.

Nested Class Summary
`(package private) static interface` | `FieldReferenceConverter.Delegate` Responsible for the bits around and between the field references.
`static class` | `FieldReferenceConverter.IllegalFieldReferenceException` May be thrown by the `Delegate` for badly formatted input.

Constructor Summary
`FieldReferenceConverter(com.google.gwt.uibinder.rebind.FieldManager fieldManager)`

Method Summary
`java.lang.String` | `convert(java.lang.String in, FieldReferenceConverter.Delegate delegate)`
`java.lang.String` | `convert(com.google.gwt.uibinder.rebind.XMLElement source, java.lang.String in, FieldReferenceConverter.Delegate delegate)`
`static int` | `countFieldReferences(java.lang.String string)` Returns the number of field references in the given string.
`static java.lang.String` | `expressionToPath(java.lang.String expression)` Reverses most of the work of `convert(java.lang.String, com.google.gwt.uibinder.attributeparsers.FieldReferenceConverter.Delegate)`, turning a java expresion back into a dotted path.
`static boolean` | `hasFieldReferences(java.lang.String string)` Returns true if the given string holds one or more field references.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### FieldReferenceConverter

    FieldReferenceConverter(com.google.gwt.uibinder.rebind.FieldManager fieldManager)

Parameters:
  `fieldManager` - to register parsed references with. May be null

Method Detail

### countFieldReferences

    public static int countFieldReferences(java.lang.String string)

  Returns the number of field references in the given string.

### expressionToPath

    public static java.lang.String expressionToPath(java.lang.String expression)

  Reverses most of the work of `convert(java.lang.String, com.google.gwt.uibinder.attributeparsers.FieldReferenceConverter.Delegate)`, turning a java expresion back into a dotted path.

### hasFieldReferences

    public static boolean hasFieldReferences(java.lang.String string)

  Returns true if the given string holds one or more field references.

### convert

    public java.lang.String convert(java.lang.String in,
                                    FieldReferenceConverter.Delegate delegate)

  Throws:
    `FieldReferenceConverter.IllegalFieldReferenceException` - if the delegate does

### convert

    public java.lang.String convert(com.google.gwt.uibinder.rebind.XMLElement source,
                                    java.lang.String in,
                                    FieldReferenceConverter.Delegate delegate)

  Throws:
    `FieldReferenceConverter.IllegalFieldReferenceException` - if the delegate does

Overview | Package | Class | Use | Deprecated | Help
| GWT 2.7.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD