/modules/mod_base/filters/filter_capfirst.erl

https://code.google.com/p/zotonic/ · Erlang · 30 lines · 8 code · 6 blank · 16 comment · 0 complexity · 36c002eadf5245b8c980eccf0685ebce MD5 · raw file

  1. %% @author Marc Worrell <marc@worrell.nl>
  2. %% @copyright 2010 Marc Worrell
  3. %% @doc 'capfirst' filter, capitalize the first character
  4. %% Copyright 2010 Marc Worrell
  5. %%
  6. %% Licensed under the Apache License, Version 2.0 (the "License");
  7. %% you may not use this file except in compliance with the License.
  8. %% You may obtain a copy of the License at
  9. %%
  10. %% http://www.apache.org/licenses/LICENSE-2.0
  11. %%
  12. %% Unless required by applicable law or agreed to in writing, software
  13. %% distributed under the License is distributed on an "AS IS" BASIS,
  14. %% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. %% See the License for the specific language governing permissions and
  16. %% limitations under the License.
  17. -module(filter_capfirst).
  18. -export([capfirst/2]).
  19. capfirst(undefined, _Context) ->
  20. undefined;
  21. capfirst([H|T], _Context) when H >= $a andalso H =< $z ->
  22. [H + $A - $a | T];
  23. capfirst(<<Byte:8/integer, Binary/binary>>, _Context) when Byte >= $a andalso Byte =< $z ->
  24. [<<(Byte + $A - $a)>>, Binary].