kandy icon indicating copy to clipboard operation
kandy copied to clipboard

Add internal modifier to internal API

Open AndreiKingsley opened this issue 2 years ago • 5 comments

AndreiKingsley avatar Jul 20 '23 11:07 AndreiKingsley

Hide specific public fields and functions from the public API. Currently, all fields and functions declared as public are accessible to external users of the library, which may not always be desired or appropriate. Add corresponding options to compilerArgs

devcrocod avatar Jul 20 '23 13:07 devcrocod

https://github.com/JetBrains/kotlin/blob/167ddc556dea55603876c1ef91c3319e4dd36284/compiler/testData/cli/jvm/extraHelp.out#L38

devcrocod avatar Jul 27 '23 16:07 devcrocod

https://youtrack.jetbrains.com/issue/KT-20760

devcrocod avatar Jul 27 '23 16:07 devcrocod

classDiagram
direction BT
class BaseContext {
<<Interface>>
   plotContext: PlotContext
   datasetIndex: Int
   datasetHandler: DatasetHandler
}
class BindingCollector {
    settings: Map~AesName~, ~Setting~
    mappings: Map~AesName~, ~Mapping~
    freeScales: Map~AesName~, ~FreeScale~
}
class BindingContext {
<<Interface>>
   bindingCollector: BindingCollector
}
class DataFramePlotContext~T~ {
   layersInheritMappings: Boolean
   datasetIndex: Int
   datasetHandlers: List~DatasetHandler~ 
   bindingCollector: BindingCollector
   plotContext: PlotContext
   features: Map~FeatureName~, ~PlotFeature~
   layers: List~Layer~
}
class DatasetHandler {
   buffer: DataFrame~*~
   initialNamedData: NamedData
   initialDataset: TableData
}
class GroupByPlotContext~T~ {
   layersInheritMappings: Boolean
   datasetIndex: Int
   datasetHandlers: List~DatasetHandler~
   bindingCollector: BindingCollector
   plotContext: PlotContext
   features: Map~FeatureName~, ~PlotFeature~
   layers: List~Layer~
}
class GroupedContext {
   plotContext: LayerPlotContext
}
class LayerCollectorContext {
<<Interface>>
   layersInheritMappings: Boolean
   layers: List~Layer~
}
class LayerContext {
   handlerRowsCount: Int
   requiredAes: Set~AesName~
   features: Map~FeatureName~, ~LayerFeature~ 
}
class LayerPlotContext {
    <<Interface>>
}
class PlotContext {
    <<Interface>>
    features: Map~FeatureName~, ~PlotFeature~
    datasetHandlers: List~DatasetHandler~
}
class SubBindingContext {
<<Interface>>
   parentContext: BindingContext
}
class ValidationKt

BindingContext  -->  BaseContext 
DataFramePlotContext~T~  ..>  LayerPlotContext 
GroupByPlotContext~T~  ..>  LayerPlotContext 
GroupedContext  ..>  LayerCollectorContext 
LayerCollectorContext  -->  BaseContext 
LayerContext  ..>  BindingContext 
LayerPlotContext  -->  LayerCollectorContext 
LayerPlotContext  -->  PlotContext 
PlotContext  -->  BindingContext 
SubBindingContext  -->  BindingContext 

devcrocod avatar Jul 28 '23 10:07 devcrocod

Internal properties:

DataFramePlotContext:
        - bindingCollector
        - datasetHandlers
        - plotFeatures

LayerContext:
        - bindingCollector
        - layerFeatures

GroupByPlotContext:
        - bindingCollector
        - plotFeatures
        - datasetHandlers

devcrocod avatar Apr 30 '24 14:04 devcrocod