Fast CSS parser

US10489497B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10489497-B2
Application numberUS-201816140030-A
CountryUS
Kind codeB2
Filing dateSep 24, 2018
Priority dateJun 30, 2014
Publication dateNov 26, 2019
Grant dateNov 26, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The technology disclosed relates to systems and methods for providing a CSS parser to improve the maintainability of code that displays data to users. The technology disclosed also improves the performance and consistency of the code that delivers a user's experience. An embodiment operates by accessing a CSS target token in a first customizable code segment and scanning a CSS codebase to locate a second customizable code segment of the CSS codebase that comprises the target token. Embodiments may further include transforming an object in the first or second customizable code segments of the CSS codebase by modifying the first or second customizable code segments to include customization code, parsing the first and second customizable code segments by transforming the first or second customizable code segments of the CSS codebase into a plurality of segment parse trees, and outputting a customized codebase based on the plurality of segment parse trees.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: accessing, by a cascading style sheet (CSS) parser at runtime, implemented by at least one processor, a CSS target token in a first customizable code segment; scanning, by the at least one processor, a CSS codebase to locate a second customizable code segment of the CSS codebase that comprises the target token, wherein the first or second customizable code segments are specified by a selected set of customizations based at least in part on an attribute of a user; transforming, by the at least one processor, a first object in the first or second customizable code segments of the CSS codebase, by modifying the first or second customizable code segments to include customization code; parsing, by the at least one processor, the first and second customizable code segments, by transforming, by the at least one processor, the first or second customizable code segments of the CSS codebase into a plurality of segment parse trees; removing, by the at least one processor, the first object or a second object from the plurality of segment parse trees, in response to the parsing, and based on a condition corresponding to a customized codebase; and outputting, by the at least one processor, the customized codebase based on the plurality of segment parse trees. 2. The method of claim 1 , further comprising identifying, by the at least one processor, an active theme. 3. The method of claim 2 , wherein the parsing is performed in accordance with the active theme. 4. The method of claim 1 , wherein the parsing is based on a characteristic associated with a user instance for a given website. 5. The method of claim 1 , further comprising registering, by the at least one processor, a plugin with a parser. 6. The method of claim 5 , wherein the plugin performs a rework operation with respect to the CSS codebase, and wherein the modifying the first or second customizable code segments to include the customization code comprises substituting the first or second customizable code segments with the customization code or appending the customization code to the first or second customizable code segments. 7. The method of claim 5 , wherein the plugin performs a validation operation with respect to the CSS codebase, wherein the validation operation comprises linting. 8. A system comprising: memory and at least one processor configured to: access, by a cascading style sheet (CSS) parser at runtime, a CSS target token in a first customizable code segment; scan a CSS codebase to locate a second customizable code segment of the CSS codebase that comprises the target token, wherein the first or second customizable code segments are specified by a selected set of customizations based at least in part on an attribute of a user; transform a first object in the first or second customizable code segments of the CSS codebase, by modifying the first or second customizable code segments to include customization code; parse the first and second customizable code segments, by transforming the first or second customizable code segments of the CSS codebase into a plurality of segment parse trees; remove the first object or a second object from the plurality of segment parse trees, in response to the parsing, and based on a condition corresponding to a customized codebase; and output the customized codebase based on the plurality of segment parse trees. 9. The system of claim 8 , the at least one processor being further configured to identify an active theme. 10. The system of claim 9 , wherein the parsing is performed in accordance with the active theme. 11. The system of claim 8 , wherein the parsing is based on at least a characteristic associated with a user instance for a given website. 12. The system of claim 8 , the at least one processor being further configured to: register a plugin with a parser, wherein: the plugin is accessible from the CSS codebase, the parser is configured to parse a remaining object of the customized codebase, and the remaining object comprises at least one of an at-rule, a selector, or a declaration. 13. The system of claim 12 , wherein the plugin performs a rework operation with respect to the CSS codebase, and wherein the modifying the first or second customizable code segments to include the customization code comprises substituting the first or second customizable code segments with the customization code or appending the customization code to the first or second customizable code segments. 14. A non-transitory computer-readable storage device comprising instructions that, when executed by at least one processor, cause the at least one processor to perform operations comprising: accessing, by a cascading style sheet (CSS) parser at runtime, a CSS target token in a first customizable code segment; scanning a CSS codebase to locate a second customizable code segment of the CSS codebase that comprises the target token, wherein the first or second customizable code segments are specified by a selected set of customizations based at least in part on an attribute of a user; transforming a first object in the first or second customizable code segments of the CSS codebase, by modifying the first or second customizable code segments to include customization code; parsing the first and second customizable code segments, by transforming the first or second customizable code segments of the CSS codebase into a plurality of segment parse trees; removing the first object or a second object from the plurality of segment parse trees, in response to the parsing, and based on a condition corresponding to a customized codebase; and outputting the customized codebase based on the plurality of segment parse trees. 15. The non-transitory computer-readable storage device of claim 14 , the operations further comprising identifying an active theme. 16. The non-transitory computer-readable storage device of claim 15 , wherein the parsing is performed in accordance with the active theme. 17. The non-transitory computer-readable storage device of claim 14 , wherein the parsing is based on at least a characteristic associated with a user instance for a given website. 18. The non-transitory computer-readable storage device of claim 14 , the operations further comprising: registering a plugin with a parser, wherein: the plugin is accessible from the CSS codebase, the parser is configured to parse a remaining object of the customized codebase, and the remaining object comprises at least one of an at-rule, a selector, or a declaration. 19. The non-transitory computer-readable storage device of claim 18 , wherein the plugin performs a rework operation with respect to the CSS codebase, and wherein the modifying the first or second customizable code segments to include the customization code comprises substituting the first or second customizable code segments with the customization code or appending the customization code to the first or second customizable code segments. 20. The non-transitory computer-readable storage device of claim 18 , wherein the plugin performs a validation operation with respect to the CSS codebase, wherein the validation operation comprises linting.

Assignees

Inventors

Classifications

  • Form filling; Merging · CPC title

  • Tabulation, i.e. one-dimensional [1D] positioning · CPC title

  • G06F40/154Primary

    Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets · CPC title

  • Tree-structured documents (parsing G06F40/205; validation G06F40/226) · CPC title

  • Parsing markup language streams (streaming G06F40/149) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10489497B2 cover?
The technology disclosed relates to systems and methods for providing a CSS parser to improve the maintainability of code that displays data to users. The technology disclosed also improves the performance and consistency of the code that delivers a user's experience. An embodiment operates by accessing a CSS target token in a first customizable code segment and scanning a CSS codebase to locat…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F40/154. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 26 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).