Skip to content
This repository has been archived by the owner on Jul 17, 2019. It is now read-only.

Commit

Permalink
Remove mycss_result and everything connected with it; Added mycss_sty…
Browse files Browse the repository at this point in the history
…lesheet_t; Change namespace module;
  • Loading branch information
lexborisov committed Jul 24, 2016
1 parent cb2409e commit 91c2946
Show file tree
Hide file tree
Showing 80 changed files with 2,433 additions and 3,225 deletions.
356 changes: 0 additions & 356 deletions devel/osx/mycss.xcodeproj/project.pbxproj

This file was deleted.

This file was deleted.

Binary file not shown.

This file was deleted.

This file was deleted.

This file was deleted.

24 changes: 12 additions & 12 deletions include/mycss/an_plus_b.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@
#ifdef __cplusplus
extern "C" {
#endif

#include <mycss/result.h>

#include <mycss/entry.h>
#include <mycss/selectors/list.h>

struct mycss_an_plus_b {
mycss_an_plus_b_entry_t* anb_entry;
Expand All @@ -39,27 +39,27 @@ struct mycss_an_plus_b_entry {
long n;

bool is_broken;
mycss_result_entry_t* of;
mycss_selectors_list_t* of;
};

mycss_an_plus_b_t * mycss_an_plus_b_create(void);
mycss_status_t mycss_an_plus_b_init(mycss_entry_t* entry, mycss_an_plus_b_t* anb);
mycss_status_t mycss_an_plus_b_clean_all(mycss_an_plus_b_t* anb);
mycss_an_plus_b_t * mycss_an_plus_b_destroy(mycss_an_plus_b_t* anb, bool self_destroy);

bool mycss_an_plus_b_state_token_all(mycss_result_t* result, mycss_token_t* token);
bool mycss_an_plus_b_state_token_skip_whitespace(mycss_result_t* result, mycss_token_t* token);
bool mycss_an_plus_b_state_skip_all(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_token_all(mycss_entry_t* entry, mycss_token_t* token);
bool mycss_an_plus_b_state_token_skip_whitespace(mycss_entry_t* entry, mycss_token_t* token);
bool mycss_an_plus_b_state_skip_all(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);

void mycss_an_plus_b_print(mycss_an_plus_b_entry_t* anb_entry, FILE* fh);

void mycss_an_plus_b_parser_expectations_error(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
void mycss_an_plus_b_parser_expectations_error(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);

bool mycss_an_plus_b_state_anb(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus_n_hyphen(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus_n(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus_n_plus(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus_n_hyphen(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus_n(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
bool mycss_an_plus_b_state_anb_plus_n_plus(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);

#ifdef __cplusplus
} /* extern "C" */
Expand Down
4 changes: 0 additions & 4 deletions include/mycss/api.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,6 @@ enum mycss_status {
MyCSS_STATUS_ERROR_NAMESPACE_ENTRIES_CREATE = 0x010202,
MyCSS_STATUS_ERROR_NAMESPACE_ENTRIES_INIT = 0x010203,
MyCSS_STATUS_ERROR_NAMESPACE_NODE_ADD = 0x010204,
MyCSS_STATUS_ERROR_RESULT_CREATE = 0x010300,
MyCSS_STATUS_ERROR_RESULT_ENTRIES_CREATE = 0x010301,
MyCSS_STATUS_ERROR_RESULT_ENTRIES_INIT = 0x010302,
MyCSS_STATUS_ERROR_RESULT_ENTRIES_ADD_NODE = 0x010303,
MyCSS_STATUS_ERROR_RULES_CREATE = 0x010400,
MyCSS_STATUS_ERROR_STRING_CREATE = 0x010501,
MyCSS_STATUS_ERROR_STRING_INIT = 0x010502,
Expand Down
33 changes: 30 additions & 3 deletions include/mycss/entry.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,27 +29,38 @@ extern "C" {
#include <mycss/myosi.h>
#include <mycss/mycss.h>
#include <mycss/parser.h>
#include <mycss/result.h>
#include <mycss/media/myosi.h>
#include <mycss/media/init.h>
#include <mycss/stylesheet.h>
#include <mycss/an_plus_b.h>
#include <mycss/namespace/myosi.h>
#include <mycss/namespace/init.h>
#include <mycss/selectors/myosi.h>
#include <mycss/selectors/init.h>
#include <mycss/rules/myosi.h>
#include <mycss/rules/init.h>
#include <myhtml/utils/mcobject.h>
#include <myhtml/utils/mchar_async.h>

struct mycss_entry {
/* refs */
mycss_t* mycss;
mycss_token_t* token;
mycss_stylesheet_t* stylesheet;

/* objects and memory for css modules */
mchar_async_t* mchar;
size_t mchar_node_id;
size_t mchar_value_node_id;

mcobject_t* mcobject_string_entries;

/* css modules */
mycss_namespace_t* ns;
mycss_selectors_t* selectors;
mycss_rules_t* rules;
mycss_media_t* media;
mycss_an_plus_b_t* anb;
mycss_result_t* result;

/* incoming buffer */
mcobject_t* mcobject_incoming_buffer;
Expand All @@ -60,11 +71,19 @@ struct mycss_entry {
mycss_entry_type_t type;
myhtml_encoding_t encoding;

/* tokenizer */
mycss_tokenizer_state_t state;
mycss_tokenizer_state_t state_back;

/* parser */
mycss_parser_token_f parser;
mycss_parser_token_f parser_switch;
mycss_parser_token_f parser_original;
void* parser_state;

/* callbacks */
mycss_token_ready_callback_f token_ready_callback;
mycss_callback_selector_done_f callback_selector_done;

/* helpers */
size_t token_counter;
Expand All @@ -76,13 +95,21 @@ mycss_status_t mycss_entry_init(mycss_t* mycss, mycss_entry_t* entry);
mycss_status_t mycss_entry_clean_all(mycss_entry_t* entry);
mycss_entry_t * mycss_entry_destroy(mycss_entry_t* entry, bool self_destroy);

void mycss_entry_end(mycss_entry_t* entry);

mycss_selectors_list_t * mycss_entry_get_parent_set_parser(mycss_entry_t* entry, mycss_selectors_list_t* selector_list);

void mycss_entry_print(mycss_entry_t* entry, mycss_selectors_list_t* selectors_list, FILE* fh);

mycss_token_ready_callback_f mycss_entry_token_ready_callback(mycss_entry_t* entry, mycss_token_ready_callback_f callback_f);

size_t mycss_entry_token_count(mycss_entry_t* entry);
myhtml_incoming_buffer_t * mycss_entry_incoming_buffer_current(mycss_entry_t* entry);
myhtml_incoming_buffer_t * mycss_entry_incoming_buffer_first(mycss_entry_t* entry);

mycss_result_t * mycss_entry_result(mycss_entry_t* entry);
myhtml_string_t * mycss_entry_string_create_and_init(mycss_entry_t* entry, size_t string_size);

mycss_stylesheet_t * mycss_entry_stylesheet(mycss_entry_t* entry);

#ifdef __cplusplus
} /* extern "C" */
Expand Down
2 changes: 1 addition & 1 deletion include/mycss/media/myosi.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ extern "C" {

typedef struct mycss_media mycss_media_t;

typedef bool (*mycss_media_state_f)(mycss_result_t* result, mycss_media_t* media, mycss_token_t* token);
typedef bool (*mycss_media_state_f)(mycss_entry_t* entry, mycss_media_t* media, mycss_token_t* token);


struct mycss_media {
Expand Down
8 changes: 4 additions & 4 deletions include/mycss/media/state.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,16 @@
#pragma once

#include <mycss/media/myosi.h>
#include <mycss/result.h>
#include <mycss/entry.h>

#ifdef __cplusplus
extern "C" {
#endif

bool mycss_media_state_token_all(mycss_result_t* result, mycss_token_t* token);
bool mycss_media_state_token_skip_whitespace(mycss_result_t* result, mycss_token_t* token);
bool mycss_media_state_token_all(mycss_entry_t* entry, mycss_token_t* token);
bool mycss_media_state_token_skip_whitespace(mycss_entry_t* entry, mycss_token_t* token);

bool mycss_media_state_skep_all(mycss_result_t* result, mycss_media_t* media, mycss_token_t* token);
bool mycss_media_state_skep_all(mycss_entry_t* entry, mycss_media_t* media, mycss_token_t* token);

#ifdef __cplusplus
} /* extern "C" */
Expand Down
23 changes: 10 additions & 13 deletions include/mycss/myosi.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,15 +56,14 @@ enum mycss_status {
MyCSS_STATUS_ERROR_SELECTORS_ENTRIES_CREATE = 0x010101,
MyCSS_STATUS_ERROR_SELECTORS_ENTRIES_INIT = 0x010102,
MyCSS_STATUS_ERROR_SELECTORS_ENTRIES_NODE_ADD = 0x010103,
MyCSS_STATUS_ERROR_SELECTORS_LIST_CREATE = 0x010104,
MyCSS_STATUS_ERROR_SELECTORS_LIST_INIT = 0x010105,
MyCSS_STATUS_ERROR_SELECTORS_LIST_ADD_NODE = 0x010106,
MyCSS_STATUS_ERROR_NAMESPACE_CREATE = 0x010200,
MyCSS_STATUS_ERROR_NAMESPACE_INIT = 0x010201,
MyCSS_STATUS_ERROR_NAMESPACE_ENTRIES_CREATE = 0x010202,
MyCSS_STATUS_ERROR_NAMESPACE_ENTRIES_INIT = 0x010203,
MyCSS_STATUS_ERROR_NAMESPACE_NODE_ADD = 0x010204,
MyCSS_STATUS_ERROR_RESULT_CREATE = 0x010300,
MyCSS_STATUS_ERROR_RESULT_ENTRIES_CREATE = 0x010301,
MyCSS_STATUS_ERROR_RESULT_ENTRIES_INIT = 0x010302,
MyCSS_STATUS_ERROR_RESULT_ENTRIES_ADD_NODE = 0x010303,
MyCSS_STATUS_ERROR_RULES_CREATE = 0x010400,
MyCSS_STATUS_ERROR_STRING_CREATE = 0x010501,
MyCSS_STATUS_ERROR_STRING_INIT = 0x010502,
Expand Down Expand Up @@ -247,17 +246,15 @@ typedef struct mycss_an_plus_b mycss_an_plus_b_t;
typedef struct mycss_an_plus_b_entry mycss_an_plus_b_entry_t;

// result
typedef struct mycss_result_list_parser mycss_result_list_parser_t;
typedef struct mycss_result_list mycss_result_list_t;
typedef struct mycss_result_entry mycss_result_entry_t;
typedef struct mycss_result mycss_result_t;

enum mycss_result_entry_type {
enum mycss_stylesheet_entry_type {
MyCSS_RESULT_ENTRY_TYPE_UNDEF = 0x00,
MyCSS_RESULT_ENTRY_TYPE_GOOD = 0x01,
MyCSS_RESULT_ENTRY_TYPE_BAD = 0x02
}
typedef mycss_result_entry_type_t;
typedef mycss_stylesheet_entry_type_t;

// stylesheet
typedef struct mycss_stylesheet mycss_stylesheet_t;

// mystring
typedef struct mycss_string_escaped_res mycss_string_escaped_res_t;
Expand All @@ -266,8 +263,8 @@ typedef struct mycss_string_res mycss_string_res_t;
typedef size_t (*mycss_tokenizer_state_f)(mycss_entry_t* entry, mycss_token_t* token, const char* css, size_t css_offset, size_t css_size);
typedef mycss_token_t * (*mycss_token_ready_callback_f)(mycss_entry_t* entry, mycss_token_t* token);
typedef size_t (*mycss_string_process_state_f)(myhtml_string_t* str, const char* data, size_t length, size_t size, mycss_string_res_t *out_res);
typedef bool (*mycss_parser_token_f)(mycss_result_t* result, mycss_token_t* token);
typedef bool (*mycss_an_plus_b_state_f)(mycss_result_t* result, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);
typedef bool (*mycss_parser_token_f)(mycss_entry_t* entry, mycss_token_t* token);
typedef bool (*mycss_an_plus_b_state_f)(mycss_entry_t* entry, mycss_an_plus_b_t* anb, mycss_an_plus_b_entry_t* anb_entry, mycss_token_t* token);

#ifdef __cplusplus
} /* extern "C" */
Expand Down
Loading

0 comments on commit 91c2946

Please sign in to comment.