• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

KHTML

  • khtml
  • xpath
path.h
Go to the documentation of this file.
1/*
2 * path.h - Copyright 2005 Frerich Raabe <raabe@kde.org>
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
15 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
17 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */
25#ifndef PATH_H
26#define PATH_H
27
28#include "expression.h"
29#include "step.h"
30
31#include <QList>
32
33int khtmlxpathyyparse();
34
35namespace khtml {
36namespace XPath {
37
38class Filter : public Expression
39{
40 public:
41 Filter( Expression *expr,
42 const QList<Predicate *> &predicates = QList<Predicate *>() );
43 virtual ~Filter();
44
45 virtual QString dump() const;
46
47 private:
48 virtual Value doEvaluate() const;
49
50 Expression *m_expr;
51 QList<Predicate *> m_predicates;
52};
53
54class LocationPath : public Expression
55{
56 friend int ::khtmlxpathyyparse();
57 public:
58 LocationPath();
59 virtual ~LocationPath();
60
61 void optimize();
62 virtual QString dump() const;
63
64 private:
65 virtual Value doEvaluate() const;
66
67 QList<Step *> m_steps;
68 bool m_absolute;
69};
70
71class Path : public Expression
72{
73 public:
74 Path( Filter *filter, LocationPath *path );
75 virtual ~Path();
76
77 virtual QString dump() const;
78
79 private:
80 virtual Value doEvaluate() const;
81
82 Filter *m_filter;
83 LocationPath *m_path;
84};
85
86} // namespace XPath
87
88} // namespace khtml
89
90#endif // PATH_H
91
QList
khtml::XPath::Expression
Definition: expression.h:115
khtml::XPath::Filter
Definition: path.h:39
khtml::XPath::Filter::~Filter
virtual ~Filter()
Definition: path.cpp:40
khtml::XPath::Filter::dump
virtual QString dump() const
Definition: path.cpp:46
khtml::XPath::LocationPath
Definition: path.h:55
khtml::XPath::LocationPath::~LocationPath
virtual ~LocationPath()
Definition: path.cpp:102
khtml::XPath::LocationPath::dump
virtual QString dump() const
Definition: path.cpp:169
khtml::XPath::LocationPath::LocationPath
LocationPath()
Definition: path.cpp:97
khtml::XPath::LocationPath::optimize
void optimize()
Definition: path.cpp:107
khtml::XPath::Path
Definition: path.h:72
khtml::XPath::Path::~Path
virtual ~Path()
khtml::XPath::Path::dump
virtual QString dump() const
Definition: path.cpp:193
khtml::XPath::Value
Definition: expression.h:76
expression.h
khtml
khtmlxpathyyparse
int khtmlxpathyyparse()
step.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Feb 20 2023 00:00:00 by doxygen 1.9.6 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KHTML

Skip menu "KHTML"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal