import static org.jctools.util.UnsafeAccess.UNSAFE; public class {{className}} extends {{implementationParent}} implements {{flyweightInterface}} { public {{className}}({{#constructorParams}} {{type}} {{name}} {{#notLast}},{{/notLast}} {{/constructorParams}}) { super({{#constructorParams}} {{name}} {{#notLast}},{{/notLast}} {{/constructorParams}}); } {{#fields}} public {{type}} get{{name}}() { return UNSAFE.get{{unsafeMethodSuffix}}(pointer + {{fieldOffset}}L); } public void set{{name}}({{type}} value) { UNSAFE.put{{unsafeMethodSuffix}}(pointer + {{fieldOffset}}L, value); } {{/fields}} }