@@ -2138,64 +2138,6 @@ func FilterItems(_ State, val value.Value, _ []value.Value, _ map[string]value.V
21382138 return value .FromSlice (nil ), nil
21392139}
21402140
2141- // FilterKeys returns a list of keys from a map.
2142- //
2143- // The keys are sorted alphabetically.
2144- //
2145- // Example:
2146- //
2147- // env := minijinja.NewEnvironment()
2148- // env.AddFilter("keys", FilterKeys)
2149- //
2150- // Template usage:
2151- //
2152- // {{ my_dict|keys }}
2153- func FilterKeys (_ State , val value.Value , _ []value.Value , _ map [string ]value.Value ) (value.Value , error ) {
2154- if m , ok := val .AsMap (); ok {
2155- keys := make ([]string , 0 , len (m ))
2156- for k := range m {
2157- keys = append (keys , k )
2158- }
2159- sort .Strings (keys )
2160-
2161- result := make ([]value.Value , len (keys ))
2162- for i , k := range keys {
2163- result [i ] = value .FromString (k )
2164- }
2165- return value .FromSlice (result ), nil
2166- }
2167- return value .FromSlice (nil ), nil
2168- }
2169-
2170- // FilterValues returns a list of values from a map.
2171- //
2172- // The values are returned in the same order as the sorted keys.
2173- //
2174- // Example:
2175- //
2176- // env := minijinja.NewEnvironment()
2177- // env.AddFilter("values", FilterValues)
2178- //
2179- // Template usage:
2180- //
2181- // {{ my_dict|values }}
2182- func FilterValues (_ State , val value.Value , _ []value.Value , _ map [string ]value.Value ) (value.Value , error ) {
2183- if m , ok := val .AsMap (); ok {
2184- keys := make ([]string , 0 , len (m ))
2185- for k := range m {
2186- keys = append (keys , k )
2187- }
2188- sort .Strings (keys )
2189-
2190- result := make ([]value.Value , len (keys ))
2191- for i , k := range keys {
2192- result [i ] = m [k ]
2193- }
2194- return value .FromSlice (result ), nil
2195- }
2196- return value .FromSlice (nil ), nil
2197- }
2198-
21992141// FilterDictSort sorts a map by keys or values.
22002142//
22012143// Returns a list of [key, value] pairs sorted by key (default) or by value.
0 commit comments