freemarker.core (FreeMarker 2.3.23 API)
Date: 2015-07-05

# Package freemarker.core

The seldom used or advanced parts of the fundamental FreeMarker API, compared to `freemarker.template`.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  DirectiveCallPlace | Gives information about the place where a directive is called from, also lets you attach a custom data object to that place.
  TemplateClassResolver | Used by built-ins and other template language features that get a class based on a string.

- Class Summary
  Class | Description
  --- | ---
  ArithmeticEngine | Class to perform arithmetic operations.
  ArithmeticEngine.BigDecimalEngine | This is the default arithmetic engine in FreeMarker.
  ArithmeticEngine.ConservativeEngine | An arithmetic engine that conservatively widens the operation arguments to extent that they can hold the result of the operation.
  CommandLine | Deprecated Will be removed (main method in a library, often classified as CWE-489 "Leftover Debug Code").
  Configurable | This is a common superclass of `Configuration`, `Template`, and `Environment` classes.
  CustomAttribute | A class that allows one to associate custom data with a `Configuration`, a `Template`, or `Environment`.
  Environment | Object that represents the runtime environment during template processing.
  FreeMarkerTree | Deprecated Will be removed, as Swing classes aren't accessible on Google App Engine.
  OptInTemplateClassResolver | A `TemplateClassResolver` that resolves only the classes whose name was specified in the constructor.

- Exception Summary
  Exception | Description
  --- | ---
  BugException | An unexpected state was reached that is certainly caused by a bug in FreeMarker.
  CallPlaceCustomDataInitializationException | Thrown by `DirectiveCallPlace.getOrCreateCustomData(Object, freemarker.template.utility.ObjectFactory)`
  Configurable.SettingValueAssignmentException | The setting name was recognized, but its value couldn't be parsed or the setting couldn't be set for some other reason.
  Configurable.UnknownSettingException | The setting name was not recognized.
  InvalidReferenceException | A subclass of `TemplateException` that says that an FTL expression has evaluated to `null` or it refers to something that doesn't exist.
  NonBooleanException | Indicates that a `TemplateBooleanModel` value was expected, but the value had a different type.
  NonDateException | Indicates that a `TemplateDateModel` value was expected, but the value had a different type.
  NonExtendedHashException | Indicates that a `TemplateHashModelEx` value was expected, but the value had a different type.
  NonHashException | Indicates that a `TemplateHashModel` value was expected, but the value had a different type.
  NonMethodException | Indicates that a `TemplateMethodModel` value was expected, but the value had a different type.
  NonNodeException | Indicates that a `TemplateNodeModel` value was expected, but the value had a different type.
  NonNumericalException | Indicates that a `TemplateNumberModel` value was expected, but the value had a different type.
  NonSequenceException | Indicates that a `TemplateSequenceModel` value was expected, but the value had a different type.
  NonSequenceOrCollectionException | Indicates that a `TemplateSequenceModel` or `TemplateCollectionModel` value was expected, but the value had a different type.
  NonStringException | Indicates that a `TemplateScalarModel` value was expected (or maybe something that can be automatically coerced to that), but the value had a different type.
  ParseException | Parsing-time exception in a template (as opposed to a runtime exception, a `TemplateException`).
  StopException | This exception is thrown when a `#stop` directive is encountered.
  UnexpectedTypeException | The type of a value differs from what was expected.

## Package freemarker.core Description

The seldom used or advanced parts of the fundamental FreeMarker API, compared to `freemarker.template`. This package also encloses FreeMarker's core parsing/rendering functionality.