cr-pseudo.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /* -*- Mode: C; indent-tabs-mode:nil; c-basic-offset: 8-*- */
  2. /*
  3. * This file is part of The Croco Library
  4. *
  5. * This program is free software; you can redistribute it and/or
  6. * modify it under the terms of version 2.1 of the GNU Lesser General Public
  7. * License as published by the Free Software Foundation.
  8. *
  9. * This program is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. * GNU General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public License
  15. * along with this program; if not, write to the Free Software
  16. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
  17. * USA
  18. *
  19. * See COPYRIGHTS file for copyright information
  20. */
  21. #ifndef __CR_PSEUDO_H__
  22. #define __CR_PSEUDO_H__
  23. #include <stdio.h>
  24. #include <glib.h>
  25. #include "cr-attr-sel.h"
  26. #include "cr-parsing-location.h"
  27. G_BEGIN_DECLS
  28. enum CRPseudoType
  29. {
  30. IDENT_PSEUDO = 0,
  31. FUNCTION_PSEUDO
  32. } ;
  33. typedef struct _CRPseudo CRPseudo ;
  34. /**
  35. *The CRPseudo Class.
  36. *Abstract a "pseudo" as defined by the css2 spec
  37. *in appendix D.1 .
  38. */
  39. struct _CRPseudo
  40. {
  41. enum CRPseudoType type ;
  42. CRString *name ;
  43. CRString *extra ;
  44. CRParsingLocation location ;
  45. } ;
  46. CRPseudo * cr_pseudo_new (void) ;
  47. guchar * cr_pseudo_to_string (CRPseudo const *a_this) ;
  48. void cr_pseudo_dump (CRPseudo const *a_this, FILE *a_fp) ;
  49. void cr_pseudo_destroy (CRPseudo *a_this) ;
  50. G_END_DECLS
  51. #endif /*__CR_PSEUDO_H__*/