ELinks 0.16.1.1
source.c File Reference
#include <sys/types.h>
#include "elinks.h"
#include "cache/cache.h"
#include "document/css/css.h"
#include "document/css/parser.h"
#include "document/css/property.h"
#include "document/css/stylesheet.h"
#include "document/document.h"
#include "document/dom/renderer.h"
#include "document/dom/util.h"
#include "document/dom/rss.h"
#include "document/renderer.h"
#include "dom/configuration.h"
#include "dom/scanner.h"
#include "dom/sgml/parser.h"
#include "dom/sgml/html/html.h"
#include "dom/sgml/rss/rss.h"
#include "dom/node.h"
#include "dom/stack.h"
#include "intl/charsets.h"
#include "protocol/uri.h"
#include "terminal/draw.h"
#include "util/error.h"
#include "util/memory.h"
#include "util/string.h"
Include dependency graph for source.c:

Data Structures

struct  source_renderer

Macros

#define check_dom_node_source(renderer, str, len)
#define assert_source(renderer, str, len)
#define URL_REGEX   "(file://|((f|ht|nt)tp(s)?|smb)://[[:alnum:]]+([-@:.]?[[:alnum:]])*\\.[[:alpha:]]{2,4}(:[[:digit:]]+)?)(/(%[[:xdigit:]]{2}|[-_~&=;?.a-z0-9])*)*"
#define URL_REGFLAGS   (REG_ICASE | REG_EXTENDED)

Functions

static void render_dom_flush (struct dom_renderer *renderer, char *string)
static void render_dom_node_text (struct dom_renderer *renderer, struct screen_char *template_, struct dom_node *node)
static enum dom_code render_dom_node_source (struct dom_stack *stack, struct dom_node *node, void *xxx)
static enum dom_code render_dom_element_source (struct dom_stack *stack, struct dom_node *node, void *xxx)
static enum dom_code render_dom_element_end_source (struct dom_stack *stack, struct dom_node *node, void *xxx)
static void set_base_uri (struct dom_renderer *renderer, char *value, size_t valuelen)
static enum dom_code render_dom_attribute_source (struct dom_stack *stack, struct dom_node *node, void *xxx)
static enum dom_code render_dom_cdata_source (struct dom_stack *stack, struct dom_node *node, void *xxx)
static enum dom_code render_dom_document_start (struct dom_stack *stack, struct dom_node *node, void *xxx)
static enum dom_code render_dom_document_end (struct dom_stack *stack, struct dom_node *node, void *xxx)

Variables

struct dom_stack_context_info dom_source_renderer_context_info

Macro Definition Documentation

◆ assert_source

#define assert_source ( renderer,
str,
len )
Value:
assertm(check_dom_node_source(renderer, str, len), "renderer[%p : %p] str[%p : %p]", \
(renderer)->source, (renderer)->end, (str), (str) + (len))
#define assertm(x, m...)
This is extended assert() version, it can print additional user-specified message.
Definition error.h:129
#define check_dom_node_source(renderer, str, len)
Definition source.c:39

◆ check_dom_node_source

#define check_dom_node_source ( renderer,
str,
len )
Value:
((renderer)->source <= (str) && (str) + (len) <= (renderer)->end)

◆ URL_REGEX

#define URL_REGEX   "(file://|((f|ht|nt)tp(s)?|smb)://[[:alnum:]]+([-@:.]?[[:alnum:]])*\\.[[:alpha:]]{2,4}(:[[:digit:]]+)?)(/(%[[:xdigit:]]{2}|[-_~&=;?.a-z0-9])*)*"

◆ URL_REGFLAGS

#define URL_REGFLAGS   (REG_ICASE | REG_EXTENDED)

Function Documentation

◆ render_dom_attribute_source()

enum dom_code render_dom_attribute_source ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_cdata_source()

enum dom_code render_dom_cdata_source ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_document_end()

enum dom_code render_dom_document_end ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_document_start()

enum dom_code render_dom_document_start ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_element_end_source()

enum dom_code render_dom_element_end_source ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_element_source()

enum dom_code render_dom_element_source ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_flush()

void render_dom_flush ( struct dom_renderer * renderer,
char * string )
inlinestatic

◆ render_dom_node_source()

enum dom_code render_dom_node_source ( struct dom_stack * stack,
struct dom_node * node,
void * xxx )
static

◆ render_dom_node_text()

void render_dom_node_text ( struct dom_renderer * renderer,
struct screen_char * template_,
struct dom_node * node )
inlinestatic

◆ set_base_uri()

void set_base_uri ( struct dom_renderer * renderer,
char * value,
size_t valuelen )
static

Variable Documentation

◆ dom_source_renderer_context_info

struct dom_stack_context_info dom_source_renderer_context_info