Skip to content
This repository was archived by the owner on Mar 24, 2025. It is now read-only.

Update scalafmt-core to 3.8.4 #158

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# Scala Steward: Reformat with scalafmt 3.8.0
4d568df732c59c023ac08772ec9477692790a5b1

# Scala Steward: Reformat with scalafmt 3.8.4
f193d3ff9e1e59859bda9eb16f86e269020c450b
2 changes: 1 addition & 1 deletion .scalafmt.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version = "3.8.3"
version = "3.8.4"
runner.dialect = scala3
maxColumn = 120
align.preset = more
Original file line number Diff line number Diff line change
@@ -7,19 +7,19 @@ package bitlap.rolls.compiler.plugin
sealed trait Schema

final case class ClassSchema(
className: String,
methods: List[MethodSchema]
className: String,
methods: List[MethodSchema]
) extends Schema

final case class MethodSchema(
name: String,
params: List[TypeSchema],
resultType: TypeSchema
name: String,
params: List[TypeSchema],
resultType: TypeSchema
) extends Schema

final case class TypeSchema(
typeName: String,
name: Option[String] = None,
fields: List[TypeSchema] = List.empty,
typeArgs: Option[List[TypeSchema]] = None
typeName: String,
name: Option[String] = None,
fields: List[TypeSchema] = List.empty,
typeArgs: Option[List[TypeSchema]] = None
) extends Schema
Original file line number Diff line number Diff line change
@@ -97,8 +97,8 @@ final class PrettyToStringPhase(setting: RollsSetting) extends PluginPhase with
)

private def mapDefDef(standard: Boolean, classTree: ClassTree, ts: Symbol)(using
ctx: Context,
clazz: ClassSymbol
ctx: Context,
clazz: ClassSymbol
): DefDef =
val paramSyms = classTree.primaryConstructor.paramSymss.flatten.filter(!_.isType).map(_.toFieldTree)
val elements = paramSyms
Original file line number Diff line number Diff line change
@@ -5,16 +5,16 @@ package bitlap.rolls.compiler.plugin
* @version 1.0,2023/3/31
*/
final case class RollsConfig(
classSchema: Option[String] = Some("bitlap.rolls.core.annotations.classSchema"),
prettyToString: Option[String] = Some("bitlap.rolls.core.annotations.prettyToString"),
stringMask: String = "bitlap.rolls.core.annotations.stringMask",
validateIdentPrefix: List[String] = List.empty,
rollsRuntimeClass: String = "bitlap.rolls.core.RollsRuntime",
rollsRuntimeToStringMethod: String = "toString_",
classSchemaFolder: String = "/tmp/.compiler",
classSchemaFileName: String = "classSchema_%s.txt",
classSchemaPostUri: Option[String] = None,
validateShouldStartsWith: String = ""
classSchema: Option[String] = Some("bitlap.rolls.core.annotations.classSchema"),
prettyToString: Option[String] = Some("bitlap.rolls.core.annotations.prettyToString"),
stringMask: String = "bitlap.rolls.core.annotations.stringMask",
validateIdentPrefix: List[String] = List.empty,
rollsRuntimeClass: String = "bitlap.rolls.core.RollsRuntime",
rollsRuntimeToStringMethod: String = "toString_",
classSchemaFolder: String = "/tmp/.compiler",
classSchemaFileName: String = "classSchema_%s.txt",
classSchemaPostUri: Option[String] = None,
validateShouldStartsWith: String = ""
)

object RollsConfig:
Original file line number Diff line number Diff line change
@@ -82,7 +82,7 @@ object Utils:
)(_.readObject().asInstanceOf[ClassSchema])

private class ObjectInputStreamWithCustomClassLoader(
inputStream: InputStream
inputStream: InputStream
) extends ObjectInputStream(inputStream):

override def resolveClass(desc: java.io.ObjectStreamClass): Class[_] =
Original file line number Diff line number Diff line change
@@ -20,11 +20,11 @@ import dotty.tools.dotc.quoted.reflect.FromSymbol
* @version 1.0,2023/3/31
*/
final case class FieldTree(
name: Name,
thisDot: Select,
tpe: Type,
isPrivate: Boolean,
annotations: List[Tree] // on term
name: Name,
thisDot: Select,
tpe: Type,
isPrivate: Boolean,
annotations: List[Tree] // on term
):

def containsAnnotation(annotation: Name): Context ?=> Boolean =
@@ -42,27 +42,27 @@ final case class FieldTree(
end FieldTree

final case class SimpleFieldTree(
name: String,
tpe: Type,
typeTree: Tree,
argTypes: List[Tree]
name: String,
tpe: Type,
typeTree: Tree,
argTypes: List[Tree]
)

final case class TpeTree(
typeSymbol: Tree,
argTypes: List[Tree]
typeSymbol: Tree,
argTypes: List[Tree]
)

final case class ClassTree(
name: String,
typeParams: List[Tree],
template: Template,
typeSymbol: Symbol,
annotations: List[untpd.Tree],
classSymbol: ClassSymbol,
contrAnnotations: List[Tree],
primaryConstructor: Symbol,
isCaseClass: Boolean
name: String,
typeParams: List[Tree],
template: Template,
typeSymbol: Symbol,
annotations: List[untpd.Tree],
classSymbol: ClassSymbol,
contrAnnotations: List[Tree],
primaryConstructor: Symbol,
isCaseClass: Boolean
)

extension (s: SingleDenotation)
8 changes: 4 additions & 4 deletions rolls-csv/src/main/scala/bitlap/rolls/csv/CSVMetadata.scala
Original file line number Diff line number Diff line change
@@ -5,8 +5,8 @@ package bitlap.rolls.csv
* @version 1.0,2023/4/16
*/
final case class CSVMetadata(
rawHeaders: List[String],
classFieldNames: List[String],
rowsNum: () => Long,
invalidRowsNum: () => Long
rawHeaders: List[String],
classFieldNames: List[String],
rowsNum: () => Long,
invalidRowsNum: () => Long
)
16 changes: 8 additions & 8 deletions rolls-csv/src/main/scala/bitlap/rolls/csv/CSVUtils.scala
Original file line number Diff line number Diff line change
@@ -21,19 +21,19 @@ object CSVUtils:
def FileName(fileName: String): FileName = fileName

inline def writeCSV[T](fileName: FileName, objs: List[T])(
encodeLine: T => String
encodeLine: T => String
)(using mirror: Mirror.ProductOf[T], format: CSVFormat = DefaultCSVFormat): Boolean =
val fields = mirrors.labels[T](using mirror)
writeCSV(new File(fileName), fields, objs.map(encodeLine))(using format)

inline def writeCSV[T](file: File, objs: List[T])(
encodeLine: T => String
encodeLine: T => String
)(using mirror: Mirror.ProductOf[T], format: CSVFormat): Boolean =
val fields = mirrors.labels[T](using mirror)
writeCSV(file, fields, objs.map(encodeLine))(using format)

private def writeCSV(file: File, fields: List[String], lines: List[String])(using
format: CSVFormat
format: CSVFormat
): Boolean = {
checkFile(file)
// write class fieldName as csv header
@@ -69,13 +69,13 @@ object CSVUtils:
}

inline def readCSV[T](file: File)(
decodeLine: String => T
decodeLine: String => T
)(using mirror: Mirror.ProductOf[T], format: CSVFormat): CSVData[T] =
CSVUtils.readFromFileWithMetadata[T](file, decodeLine)

inline def readCSV[T](fileName: FileName)(decodeLine: String => T)(using
mirror: Mirror.ProductOf[T],
format: CSVFormat = DefaultCSVFormat
mirror: Mirror.ProductOf[T],
format: CSVFormat = DefaultCSVFormat
): CSVData[T] =
CSVUtils.readFromFileWithMetadata[T](new File(fileName), decodeLine)

@@ -91,8 +91,8 @@ object CSVUtils:
}

inline private def readFromFileWithMetadata[T](file: File, decodeLine: String => T)(using
mirror: Mirror.ProductOf[T],
format: CSVFormat
mirror: Mirror.ProductOf[T],
format: CSVFormat
): CSVData[T] = {
val lines: Iterator[String] = Source.fromFile(file)(Codec(format.stringCharset.charset)).getLines()

Original file line number Diff line number Diff line change
@@ -13,16 +13,16 @@ import bitlap.rolls.csv.internal.*
* @version 1.0,2023/4/5
*/
final class AppliedDecoderBuilder[
To,
ToSubs <: Tuple,
DerivedToSubs <: Tuple
To,
ToSubs <: Tuple,
DerivedToSubs <: Tuple
](
private val appliedTo: String,
private[csv] override val computes: Map[FieldName, String => Any]
private val appliedTo: String,
private[csv] override val computes: Map[FieldName, String => Any]
) extends DecoderBuilder[AppliedDecoderBuilder, To, ToSubs, DerivedToSubs]:

override def construct[DerivedToSubs <: Tuple](
computes: Map[FieldName, String => Any]
computes: Map[FieldName, String => Any]
): AppliedDecoderBuilder[To, ToSubs, DerivedToSubs] =
new AppliedDecoderBuilder[To, ToSubs, DerivedToSubs](this.appliedTo, computes)

Original file line number Diff line number Diff line change
@@ -13,16 +13,16 @@ import bitlap.rolls.csv.internal.*
* @version 1.0,2023/4/5
*/
final class AppliedEncoderBuilder[
From,
FromSubs <: Tuple,
DerivedFromSubs <: Tuple
From,
FromSubs <: Tuple,
DerivedFromSubs <: Tuple
](
private val appliedTo: From,
private[csv] val computes: Map[FieldName, Any => String]
private val appliedTo: From,
private[csv] val computes: Map[FieldName, Any => String]
) extends EncoderBuilder[AppliedEncoderBuilder, From, FromSubs, DerivedFromSubs]:

override def construct[DerivedFromSubs <: Tuple](
computes: Map[FieldName, Any => String]
computes: Map[FieldName, Any => String]
): AppliedEncoderBuilder[From, FromSubs, DerivedFromSubs] =
new AppliedEncoderBuilder[From, FromSubs, DerivedFromSubs](this.appliedTo, computes)

Original file line number Diff line number Diff line change
@@ -11,16 +11,16 @@ import bitlap.rolls.csv.internal.*
* @version 1.0,2023/4/5
*/
trait DecoderBuilder[
SpecificBuilder[_, _ <: Tuple, _ <: Tuple],
To,
ToSubs <: Tuple,
DerivedToSubs <: Tuple
SpecificBuilder[_, _ <: Tuple, _ <: Tuple],
To,
ToSubs <: Tuple,
DerivedToSubs <: Tuple
]:
private[csv] val computes: Map[FieldName, String => Any]

final transparent inline def withFieldComputed[Field](
inline selector: To => Field,
f: String => Field
inline selector: To => Field,
f: String => Field
) = {
val selectedField = BuilderMacros.selectedField(selector)
val computedField = FieldName(selectedField) -> f.asInstanceOf[String => Field]
@@ -35,7 +35,7 @@ trait DecoderBuilder[
}

def construct[DerivedToSubs <: Tuple](
computes: Map[FieldName, String => Any] = this.computes
computes: Map[FieldName, String => Any] = this.computes
): SpecificBuilder[To, ToSubs, DerivedToSubs]

end DecoderBuilder
Original file line number Diff line number Diff line change
@@ -11,16 +11,16 @@ import bitlap.rolls.csv.internal.*
* @version 1.0,2023/4/5
*/
trait EncoderBuilder[
SpecificBuilder[_, _ <: Tuple, _ <: Tuple],
From,
FromSubs <: Tuple,
DerivedFromSubs <: Tuple
SpecificBuilder[_, _ <: Tuple, _ <: Tuple],
From,
FromSubs <: Tuple,
DerivedFromSubs <: Tuple
]:
private[csv] val computes: Map[FieldName, Any => String]

final transparent inline def withFieldComputed[Field](
inline selector: From => Field,
f: Field => String
inline selector: From => Field,
f: Field => String
) = {
val selectedField = BuilderMacros.selectedField(selector)
val computedField = FieldName(selectedField) -> f.asInstanceOf[Any => String]
@@ -35,7 +35,7 @@ trait EncoderBuilder[
}

def construct[DerivedFromSubs <: Tuple](
computes: Map[FieldName, Any => String] = this.computes
computes: Map[FieldName, Any => String] = this.computes
): SpecificBuilder[From, FromSubs, DerivedFromSubs]

end EncoderBuilder
Original file line number Diff line number Diff line change
@@ -16,14 +16,14 @@ private[csv] object BuilderMacros {
private type IsString[S <: String] = S

transparent inline def dropCompletionField[
SpecificBuilder[_, _ <: Tuple, _ <: Tuple],
From,
FromSubs <: Tuple,
DerivedFromSubs <: Tuple,
FieldType
SpecificBuilder[_, _ <: Tuple, _ <: Tuple],
From,
FromSubs <: Tuple,
DerivedFromSubs <: Tuple,
FieldType
](
inline builder: SpecificBuilder[From, FromSubs, DerivedFromSubs],
inline selector: From => FieldType
inline builder: SpecificBuilder[From, FromSubs, DerivedFromSubs],
inline selector: From => FieldType
) = ${ dropCompletionFieldMacro('builder, 'selector) }

inline def selectedField[From, Field](inline selector: From => Field): String =
@@ -33,14 +33,14 @@ private[csv] object BuilderMacros {
Expr(selectedFieldName(selector))

private def dropCompletionFieldMacro[
SpecificBuilder[_, _ <: Tuple, _ <: Tuple]: Type,
From: Type,
FromSubs <: Tuple: Type,
DerivedFromSubs <: Tuple: Type,
Field: Type
SpecificBuilder[_, _ <: Tuple, _ <: Tuple]: Type,
From: Type,
FromSubs <: Tuple: Type,
DerivedFromSubs <: Tuple: Type,
Field: Type
](
builder: Expr[SpecificBuilder[From, FromSubs, DerivedFromSubs]],
selector: Expr[From => Field]
builder: Expr[SpecificBuilder[From, FromSubs, DerivedFromSubs]],
selector: Expr[From => Field]
)(using Quotes) =
import quotes.reflect.*
val selectedField = selectedFieldName(selector).asConstantType
Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@ import bitlap.rolls.csv.*
private[csv] object CodecMacros {

inline def encode[From, DerivedFromSubs <: Tuple](
computes: Map[FieldName, Any => String]
computes: Map[FieldName, Any => String]
)(using CSVFormat): Encoder[From] = { (from: From) =>
val encoders = Derivation.encodersForAllFields[DerivedFromSubs]
Construct.constructCSV(from.asInstanceOf[Product]) { (labelsToValuesOfFrom, label) =>
@@ -24,8 +24,8 @@ private[csv] object CodecMacros {
}

inline def decode[To, DerivedToSubs <: Tuple](
toMirror: Mirror.ProductOf[To],
computes: Map[FieldName, String => Any]
toMirror: Mirror.ProductOf[To],
computes: Map[FieldName, String => Any]
)(using CSVFormat): Decoder[To] = { (to: String) =>
val strings = StringUtils.splitColumns(to)
val decoders = Derivation.decodersForAllFields[DerivedToSubs]
Original file line number Diff line number Diff line change
@@ -14,10 +14,10 @@ import bitlap.rolls.csv.*
private[csv] object Construct:

inline def constructInstance[L](
values: List[String],
i: Int,
decoders: Map[FieldName, Decoder[Any]],
computes: Map[FieldName, String => Any]
values: List[String],
i: Int,
decoders: Map[FieldName, Decoder[Any]],
computes: Map[FieldName, String => Any]
): List[Any] =
inline erasedValue[L] match
case _: EmptyTuple => Nil
@@ -32,7 +32,7 @@ private[csv] object Construct:
end constructInstance

inline def constructCSV(
from: Product
from: Product
)(unsafeMapper: (Map[FieldName, Any], FieldName) => String)(using csvFormat: CSVFormat): String = {
val labelsToValuesOfFrom = FieldName.wrapAll(from.productElementNames.zip(from.productIterator).toMap)
val result = from.productElementNames.map { label =>
Original file line number Diff line number Diff line change
@@ -13,7 +13,7 @@ import bitlap.rolls.csv.*
private[csv] object Derivation:

inline def encodersForAllFields[
FromFields <: Tuple
FromFields <: Tuple
]: Map[FieldName, Encoder[Any]] =
inline erasedValue[FromFields] match {
case _: EmptyTuple =>
@@ -23,7 +23,7 @@ private[csv] object Derivation:
}

inline def decodersForAllFields[
FromFields <: Tuple
FromFields <: Tuple
]: Map[FieldName, Decoder[Any]] =
inline erasedValue[FromFields] match {
case _: EmptyTuple =>
@@ -33,8 +33,8 @@ private[csv] object Derivation:
}

private inline def decoderForField[
FieldLabel <: String,
FromFields <: Tuple
FieldLabel <: String,
FromFields <: Tuple
]: (FieldName, Decoder[Any]) =
inline erasedValue[FromFields] match {
case _: EmptyTuple =>
@@ -46,8 +46,8 @@ private[csv] object Derivation:
}

private inline def encoderForField[
FieldLabel <: String,
FromFields <: Tuple
FieldLabel <: String,
FromFields <: Tuple
]: (FieldName, Encoder[Any]) =
inline erasedValue[FromFields] match {
case _: EmptyTuple =>
Original file line number Diff line number Diff line change
@@ -11,8 +11,10 @@ private[csv] object FieldSelector:

object SelectorLambda:

def unapply(using quotes: Quotes)(
arg: quotes.reflect.Term
def unapply(using
quotes: Quotes
)(
arg: quotes.reflect.Term
): Option[(List[quotes.reflect.ValDef], quotes.reflect.Term)] =
import quotes.reflect.*
arg match {
Original file line number Diff line number Diff line change
@@ -4,12 +4,12 @@ final case class Dimension(key: String, value: String)
final case class Metric(time: Long, entity: Int, dimensions: List[Dimension], metricName: String, metricValue: Int)

final case class MultipleFieldsMetric(
time: Long,
entity: Int,
dimensions: List[Dimension],
metricName: String,
metricValue: Int,
attributes: List[Dimension]
time: Long,
entity: Int,
dimensions: List[Dimension],
metricName: String,
metricValue: Int,
attributes: List[Dimension]
)

object Metric:
Original file line number Diff line number Diff line change
@@ -9,20 +9,20 @@ import caliban.schema.Annotations.GQLDescription
object ValidatePrefixExample extends App {

final case class StarDictInput(
@GQLDescription("dictName")
dictName: Option[String],
@GQLDescription("dictCode")
dictCode: Option[String],
@GQLDescription("starDictPayload")
starDictPayload: StarDictPayload,
@GQLDescription("starDictFunction")
starDictFunction: String => StarDictPayload
@GQLDescription("dictName")
dictName: Option[String],
@GQLDescription("dictCode")
dictCode: Option[String],
@GQLDescription("starDictPayload")
starDictPayload: StarDictPayload,
@GQLDescription("starDictFunction")
starDictFunction: String => StarDictPayload
)

final case class StarDictPayload(
@GQLDescription("id")
id: Option[String],
@GQLDescription("name")
name: Option[String]
@GQLDescription("id")
id: Option[String],
@GQLDescription("name")
name: Option[String]
)
}
136 changes: 68 additions & 68 deletions rolls-plugin-tests/src/test/scala/bitlap/rolls/tests/package.scala
Original file line number Diff line number Diff line change
@@ -13,65 +13,65 @@ import caliban.schema.Annotations.GQLDescription
*/
@prettyToString
final case class TestCaseClassJson(
id: String,
tenantId: Map[String, String] @stringMask,
private val resourceActions: List[String],
@stringMask deleted: Long,
@stringMask subPermissions: List[String]
id: String,
tenantId: Map[String, String] @stringMask,
private val resourceActions: List[String],
@stringMask deleted: Long,
@stringMask subPermissions: List[String]
)

@prettyToString(standard = false)
final case class TestCaseClassJsonNamedArg(
id: String,
tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
id: String,
tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
)

@prettyToString(true)
final case class TestCaseClassStandard(
id: String,
tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
id: String,
tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
)

@prettyToString(standard = true)
final case class TestCaseClassStandardNamedArg(
id: String,
tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
id: String,
tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
)

@prettyToString(standard = true)
final class TestClassStandardNamedArg(
id: String,
val tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
id: String,
val tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
)

@prettyToString(standard = false)
final class TestClassJsonNamedArg(
id: String,
val tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
id: String,
val tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
)

@prettyToString
final class TestClassJson(
id: String,
@stringMask val tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
id: String,
@stringMask val tenantId: Map[String, String],
private val resourceActions: List[String],
deleted: Long,
subPermissions: List[String]
)

/** Start HttpServer.scala to query class schema
@@ -80,11 +80,11 @@ final class TestClassJson(
final case class SimpleClassTest() {

def testMethod(
listField: List[SubSubSubAuthPermissionPO],
stringField: String,
optField: Option[SubSubSubAuthPermissionPO],
NestedObjectField: SubSubSubAuthPermissionPO,
eitherField: Either[String, SubSubSubAuthPermissionPO]
listField: List[SubSubSubAuthPermissionPO],
stringField: String,
optField: Option[SubSubSubAuthPermissionPO],
NestedObjectField: SubSubSubAuthPermissionPO,
eitherField: Either[String, SubSubSubAuthPermissionPO]
): SubSubSubAuthPermissionPO = ???

}
@@ -93,12 +93,12 @@ final case class SimpleClassTest() {
final case class CaseClassTest() {

def testMethod1(
listField: List[AuthPermissionPO],
stringField: String,
longOptField: Option[Long],
NestedObjectField: SubAuthPermissionPO,
eitherField: Either[String, AuthPermissionPO],
simpleEitherField: Either[Throwable, String]
listField: List[AuthPermissionPO],
stringField: String,
longOptField: Option[Long],
NestedObjectField: SubAuthPermissionPO,
eitherField: Either[String, AuthPermissionPO],
simpleEitherField: Either[Throwable, String]
): Seq[AuthPermissionPO] = ???

def testMethod2(): Either[String, AuthPermissionPO] = ???
@@ -114,12 +114,12 @@ final case class CaseClassTest() {
class ClassTest {

def testMethod1(
listField: List[AuthPermissionPO],
stringField: String,
longField: Long,
nestedObjectField: SubAuthPermissionPO,
eitherField: Either[String, AuthPermissionPO],
simpleEitherField: Either[Throwable, String]
listField: List[AuthPermissionPO],
stringField: String,
longField: Long,
nestedObjectField: SubAuthPermissionPO,
eitherField: Either[String, AuthPermissionPO],
simpleEitherField: Either[Throwable, String]
): Seq[AuthPermissionPO] = ???

def testMethod2(): Either[String, AuthPermissionPO] = ???
@@ -130,33 +130,33 @@ class ClassTest {
}

final case class AuthPermissionPO(
id: String,
tenantId: Map[String, SubSubSubAuthPermissionPO],
resourceActions: List[String],
deleted: Int = 99,
updateTime: Instant = Instant.now(),
subPermissions: List[SubAuthPermissionPO],
subPermission: SubAuthPermissionPO
id: String,
tenantId: Map[String, SubSubSubAuthPermissionPO],
resourceActions: List[String],
deleted: Int = 99,
updateTime: Instant = Instant.now(),
subPermissions: List[SubAuthPermissionPO],
subPermission: SubAuthPermissionPO
)

final case class SubAuthPermissionPO(
subsub: SubSubAuthPermissionPO,
subsubMap: Map[String, SubSubSubAuthPermissionPO],
subsubList: List[SubSubSubAuthPermissionPO]
subsub: SubSubAuthPermissionPO,
subsubMap: Map[String, SubSubSubAuthPermissionPO],
subsubList: List[SubSubSubAuthPermissionPO]
)

final case class SubSubAuthPermissionPO(
id: String,
subsubsub: SubSubSubAuthPermissionPO
id: String,
subsubsub: SubSubSubAuthPermissionPO
)

final case class SubSubSubAuthPermissionPO(
list: List[String]
list: List[String]
)

@prettyToString
final case class StarGraphQLResult[T](
data: Option[T],
statusCode: Int = 200,
msg: String = "OK"
data: Option[T],
statusCode: Int = 200,
msg: String = "OK"
)
882 changes: 441 additions & 441 deletions rolls-zio/src/main/scala/bitlap/rolls/zio/autoLive.scala

Large diffs are not rendered by default.