Skip to content

Using a basic type w/ no default along w/ computed types & basic types with defaults lead to invalid code being generated #144

@wwerner

Description

@wwerner

Example:

event SchemaDefined {
    type eventType
    timestamp occurredOn
    version eventVersion

    string foo
    string[] bar = {"baz","qux","quux"}

    int i = 4242
}

Resulting code:

package io.vlingo.examples.schemata.event;

import io.vlingo.lattice.model.DomainEvent;
import java.lang.String;

public final class SchemaDefined extends DomainEvent {
  public final String eventType;

  public final long occurredOn;

  public final int eventVersion;

  public final String foo;

  public String[] bar = new java.lang.String[] { "baz", "qux", "quux" };

  public int i = 4242;

  public SchemaDefined(final String foo, final String[] bar, final int i) {
    this.eventType = "SchemaDefined";
    this.occurredOn = System.currentTimeMillis();
    this.eventVersion = io.vlingo.common.version.SemanticVersion.toValue("0.0.1");
    this.foo = foo; 
    this.bar = bar; 
    this.i = i; }

  public SchemaDefined() {
    this.eventType = "SchemaDefined";
    this.occurredOn = System.currentTimeMillis();
    this.eventVersion = io.vlingo.common.version.SemanticVersion.toValue("0.0.1");}
}

Compilation error:

...event/SchemaDefined.java:[30,83] variable foo might not have been initialized

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions