@ParametersAreNonnullByDefault public abstract class SoyAbstractValue extends Object implements SoyValue
Important: Until this API is more stable and this note is removed, users must not define classes that extend this class.
| Constructor and Description |
|---|
SoyAbstractValue() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
booleanValue()
Precondition: Only call this method if you know that this SoyValue object is a boolean.
|
abstract boolean |
equals(Object other)
Compares this value against another for equality in the sense of the '==' operator of Soy.
|
double |
floatValue()
Precondition: Only call this method if you know that this SoyValue object is a float.
|
int |
integerValue()
Precondition: Only call this method if you know that this SoyValue object is a 32-bit integer.
|
long |
longValue()
Precondition: Only call this method if you know that this SoyValue object is an integer
or long.
|
double |
numberValue()
Precondition: Only call this method if you know that this SoyValue object is a number.
|
RenderResult |
renderAndResolve(AdvisingAppendable appendable,
boolean isLast)
Renders this value to the given
AdvisingAppendable, possibly partially. |
SoyValue |
resolve()
Usually, this method is a no-op that simply returns this object.
|
RenderResult |
status()
Returns
RenderResult.done() if the value provider can be
resolved without blocking on a future. |
String |
stringValue()
Precondition: Only call this method if you know that this SoyValue object is a string.
|
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcoerceToBoolean, coerceToString, render@Nonnull public SoyValue resolve()
SoyValueProviderresolve in interface SoyValueProvider@Nonnull public RenderResult status()
SoyValueProviderRenderResult.done() if the value provider can be
resolved without blocking on a future. Otherwise, returns a
RenderResult that holds the future.
Note, once this method returns RenderResult.done() all future calls must also
return RenderResult.done().
This method will never return a
limited
RenderResult
status in interface SoyValueProviderpublic RenderResult renderAndResolve(AdvisingAppendable appendable, boolean isLast) throws IOException
SoyValueProviderAdvisingAppendable, possibly partially.
This should render the exact same content as resolve().render(Appendable) but may
optionally detach part of the way through rendering. Note, this means that this method is
stateful and if it returns something besides RenderResult.done() then the
next call to this method will resume rendering from the previous point.
renderAndResolve in interface SoyValueProviderappendable - The appendable to render to.isLast - True if this is definitely the last time this value will be rendered.
Used as a hint to implementations to not optimize for later calls (for example, by storing
render results in a buffer for faster re-renders). The value of this parameter should not
affect behavior of this method, only performance.RenderResult that describes whether or not rendering completed. If the
returned result is not done, then to complete rendering you
must call this method again.IOException - If the appendable throws an IOExceptionpublic abstract boolean equals(Object other)
SoyValuepublic boolean booleanValue()
SoyValuebooleanValue in interface SoyValuepublic int integerValue()
SoyValueintegerValue in interface SoyValuepublic long longValue()
SoyValuepublic double floatValue()
SoyValuefloatValue in interface SoyValuepublic double numberValue()
SoyValuenumberValue in interface SoyValuepublic String stringValue()
SoyValuestringValue in interface SoyValue