@@ -1706,7 +1706,6 @@ class IndexCol:
17061706
17071707 name : str
17081708 cname : str
1709- kind_attr : str
17101709
17111710 def __init__ (
17121711 self ,
@@ -1717,12 +1716,10 @@ def __init__(
17171716 cname : Optional [str ] = None ,
17181717 itemsize = None ,
17191718 axis = None ,
1720- kind_attr : Optional [str ] = None ,
17211719 pos = None ,
17221720 freq = None ,
17231721 tz = None ,
17241722 index_name = None ,
1725- ** kwargs ,
17261723 ):
17271724
17281725 if not isinstance (name , str ):
@@ -1734,7 +1731,6 @@ def __init__(
17341731 self .itemsize = itemsize
17351732 self .name = name
17361733 self .cname = cname or name
1737- self .kind_attr = kind_attr or f"{ name } _kind"
17381734 self .axis = axis
17391735 self .pos = pos
17401736 self .freq = freq
@@ -1751,7 +1747,10 @@ def __init__(
17511747 # constructor annotations.
17521748 assert isinstance (self .name , str )
17531749 assert isinstance (self .cname , str )
1754- assert isinstance (self .kind_attr , str )
1750+
1751+ @property
1752+ def kind_attr (self ) -> str :
1753+ return f"{ self .name } _kind"
17551754
17561755 def set_pos (self , pos : int ):
17571756 """ set the position of this column in the Table """
@@ -2044,11 +2043,12 @@ class DataCol(IndexCol):
20442043 _info_fields = ["tz" , "ordered" ]
20452044
20462045 @classmethod
2047- def create_for_block (cls , i = None , name = None , cname = None , version = None , ** kwargs ):
2046+ def create_for_block (
2047+ cls , i : int , name = None , version = None , pos : Optional [int ] = None
2048+ ):
20482049 """ return a new datacol with the block i """
20492050
2050- if cname is None :
2051- cname = name or f"values_block_{ i } "
2051+ cname = name or f"values_block_{ i } "
20522052 if name is None :
20532053 name = cname
20542054
@@ -2063,27 +2063,24 @@ def create_for_block(cls, i=None, name=None, cname=None, version=None, **kwargs)
20632063 except IndexError :
20642064 pass
20652065
2066- return cls (name = name , cname = cname , ** kwargs )
2066+ return cls (name = name , cname = cname , pos = pos )
20672067
20682068 def __init__ (
2069- self ,
2070- values = None ,
2071- kind = None ,
2072- typ = None ,
2073- cname = None ,
2074- data = None ,
2075- meta = None ,
2076- metadata = None ,
2077- block = None ,
2078- ** kwargs ,
2069+ self , name : str , values = None , kind = None , typ = None , cname = None , pos = None ,
20792070 ):
2080- super ().__init__ (values = values , kind = kind , typ = typ , cname = cname , ** kwargs )
2071+ super ().__init__ (
2072+ name = name , values = values , kind = kind , typ = typ , pos = pos , cname = cname
2073+ )
20812074 self .dtype = None
2082- self .dtype_attr = f"{ self .name } _dtype"
2083- self .meta = meta
2084- self .meta_attr = f"{ self .name } _meta"
2085- self .set_data (data )
2086- self .set_metadata (metadata )
2075+ self .data = None
2076+
2077+ @property
2078+ def dtype_attr (self ) -> str :
2079+ return f"{ self .name } _dtype"
2080+
2081+ @property
2082+ def meta_attr (self ) -> str :
2083+ return f"{ self .name } _meta"
20872084
20882085 def __repr__ (self ) -> str :
20892086 temp = tuple (
@@ -3156,8 +3153,15 @@ class Table(Fixed):
31563153 is_table = True
31573154 is_shape_reversed = False
31583155
3159- def __init__ (self , * args , ** kwargs ):
3160- super ().__init__ (* args , ** kwargs )
3156+ index_axes : List [IndexCol ]
3157+ non_index_axes : List [Tuple [int , Any ]]
3158+ values_axes : List [DataCol ]
3159+ data_columns : List
3160+ metadata : List
3161+ info : Dict
3162+
3163+ def __init__ (self , parent : HDFStore , group : "Node" , ** kwargs ):
3164+ super ().__init__ (parent , group , ** kwargs )
31613165 self .index_axes = []
31623166 self .non_index_axes = []
31633167 self .values_axes = []
@@ -3303,18 +3307,18 @@ def queryables(self) -> Dict[str, Any]:
33033307 """ return a dict of the kinds allowable columns for this object """
33043308
33053309 # compute the values_axes queryables
3306- return dict (
3307- [( a . cname , a ) for a in self . index_axes ]
3308- + [
3309- ( self .storage_obj_type . _AXIS_NAMES [ axis ], None )
3310- for axis , values in self . non_index_axes
3311- ]
3312- + [
3313- ( v . cname , v )
3314- for v in self . values_axes
3315- if v . name in set ( self . data_columns )
3316- ]
3317- )
3310+ d1 = [( a . cname , a ) for a in self . index_axes ]
3311+ d2 = [
3312+ ( self . storage_obj_type . _AXIS_NAMES [ axis ], None )
3313+ for axis , values in self .non_index_axes
3314+ ]
3315+ d3 = [
3316+ ( v . cname , v ) for v in self . values_axes if v . name in set ( self . data_columns )
3317+ ]
3318+
3319+ return dict ( d1 + d2 + d3 ) # type: ignore
3320+ # error: List comprehension has incompatible type
3321+ # List[Tuple[Any, None]]; expected List[Tuple[str, IndexCol]]
33183322
33193323 def index_cols (self ):
33203324 """ return a list of my index cols """
@@ -4432,9 +4436,7 @@ def indexables(self):
44324436 for i , n in enumerate (d ._v_names ):
44334437 assert isinstance (n , str )
44344438
4435- dc = GenericDataIndexableCol (
4436- name = n , pos = i , values = [n ], version = self .version
4437- )
4439+ dc = GenericDataIndexableCol (name = n , pos = i , values = [n ])
44384440 self ._indexables .append (dc )
44394441
44404442 return self ._indexables
0 commit comments