added constructors for enums
This commit is contained in:
@@ -28,10 +28,6 @@ public class Constructor extends Function {
|
||||
return myIsPrimary;
|
||||
}
|
||||
|
||||
public String privatePrimaryToKotlin() {
|
||||
return modifiersToKotlin() + "(" + myParams.toKotlin() + ")" + SPACE + myBlock.toKotlin();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public Kind getKind() {
|
||||
|
||||
@@ -15,19 +15,9 @@ public class Enum extends Class {
|
||||
super(name, modifiers, typeParameters, extendsTypes, baseClassParams, implementsTypes, innerClasses, methods, fields);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private Constructor getPrimaryConstructor() {
|
||||
for (Function m : myMethods)
|
||||
if (m.getKind() == Kind.CONSTRUCTOR)
|
||||
return (Constructor) m;
|
||||
return null;
|
||||
}
|
||||
|
||||
private String primaryConstructorToKotlin() {
|
||||
Constructor maybeConstructor = getPrimaryConstructor();
|
||||
if (maybeConstructor != null)
|
||||
return maybeConstructor.privatePrimaryToKotlin();
|
||||
return EMPTY;
|
||||
String primaryConstructorSignatureToKotlin() {
|
||||
String s = super.primaryConstructorSignatureToKotlin();
|
||||
return s.equals("()") ? EMPTY : s;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -38,11 +28,11 @@ public class Enum extends Class {
|
||||
@NotNull
|
||||
@Override
|
||||
public String toKotlin() {
|
||||
return modifiersToKotlin() + "enum" + SPACE + myName.toKotlin() + typeParametersToKotlin() + implementTypesToKotlin() + SPACE + "{" + N +
|
||||
return modifiersToKotlin() + "enum" + SPACE + myName.toKotlin() + primaryConstructorSignatureToKotlin() + typeParametersToKotlin() + implementTypesToKotlin() + SPACE + "{" + N +
|
||||
AstUtil.joinNodes(myFields, N) + N +
|
||||
primaryConstructorToKotlin() + N +
|
||||
AstUtil.joinNodes(methodsExceptConstructors(), N) + N +
|
||||
AstUtil.joinNodes(myInnerClasses, N) + N +
|
||||
primaryConstructorBodyToKotlin() + N +
|
||||
"}";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
enum Color {
|
||||
private int code;
|
||||
|
||||
private Color(int c) {
|
||||
code = c;
|
||||
}
|
||||
|
||||
public int getCode() {
|
||||
return code;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
enum Color(c : Int) {
|
||||
private var code : Int
|
||||
open public fun getCode() : Int {
|
||||
return code
|
||||
}
|
||||
{
|
||||
$code = c
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user