[發明專利]基于流的范圍界定有效
| 申請號: | 201880033532.1 | 申請日: | 2018-04-09 |
| 公開(公告)號: | CN110678839B | 公開(公告)日: | 2023-09-05 |
| 發明(設計)人: | G·比爾曼;B·戈茨;G·斯蒂爾 | 申請(專利權)人: | 甲骨文國際公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F11/36 |
| 代理公司: | 中國貿促會專利商標事務所有限公司 11038 | 代理人: | 周磊 |
| 地址: | 美國加*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 范圍 界定 | ||
公開了用于基于流的范圍界定的技術。相同級別代碼段序列中的第一代碼段封裝第一較低級別詞法范圍。第一較低級別范圍包括為相同級別代碼段序列提供的范圍界定。第一代碼段包括條件和未初始化變量。如果第一代碼段被執行,則使得條件被評估。如果條件被滿足,則未初始化變量被初始化,并且使未初始化變量僅在第一較低級別詞法范圍內可用。如果第二代碼段(a)引用未初始化變量,并且(b)在相同級別代碼段序列中或在第一較低級別詞法范圍之外的第二較低級別詞法范圍中,則呈現指示未初始化變量在第二代碼段的范圍之外的錯誤消息。
權益要求;通過引用并入本文
本申請要求于2017年4月8日提交的美國臨時專利申請No.62/483,342和于2018年4月6日提交的美國專利申請No.15/947,432的權益,這些申請通過引用并入本文。
申請人特此撤銷在(一個或多個)母申請或其申請歷史中的權利要求范圍的任何聲明,并告知USPTO本申請中的權利要求可能比(一個或多個)母申請中的任何權利要求更廣泛。
技術領域
本公開涉及范圍界定(scoping)變量。特別地,本公開涉及基于流的范圍界定。
背景技術
在計算機編程中,變量的范圍是其中變量可用于使用的代碼區域。例如,特定變量可能在特定代碼段或代碼區域的范圍中。如本文所使用的,“代碼段”是范圍界定規則適用于的語句、表達式或任何其它類型的代碼段(或其一部分)。“代碼區域”是塊、方法、函數、類、程序包(packages)、模塊、應用或包圍一個或多個代碼段的任何其它類型的代碼區域。范圍界定是確定一個或多個變量可用于在其中使用的(一個或多個)范圍的處理。具體而言,在實施例中,范圍界定確定代碼中的(一個或多個)變量的(一個或多個)范圍,其中一個代碼段序列封裝一個或多個其它代碼段序列。不同的編程語言具有不同的規則用于范圍界定變量。一般而言,存在兩種類型的范圍界定:動態范圍界定和詞法范圍界定,如下面進一步詳細描述的。
典型地,在動態范圍界定中,變量在范圍內,直到其中聲明該變量的函數返回。例如,假設函數f()在一個代碼段中聲明了局部變量x,然后在隨后的代碼段中調用另一個函數g()。在運行時,x在聲明x的代碼段之后的f()中的所有代碼段的范圍內,無論在調用g()之前還是調用g()之后。但是,當從f()內調用g()時,x也在g()中的所有代碼段的范圍內,因為在調用g()時,f()尚未返回。換句話說,當從f()內調用g()時,g()的范圍包括f()的范圍。在典型的動態范圍界定的編程語言中,如果g()聲明也稱為x的另一個局部變量,則g()的變量x覆蓋f()’的變量x,直到g()返回。
典型地,在詞法范圍界定(也稱為靜態范圍界定)中,變量的范圍取決于其中聲明該變量的詞法環境,遵守特定編程語言的范圍界定規則。在典型的詞法范圍界定的編程語言中,在方法中聲明的變量被視為局部變量。例如,假設方法f()在一個代碼段中聲明了變量x,然后在后續代碼段中調用了另一個方法g()。因為x對于f()是局部的,因此不必編譯或執行應用就知道x不在g()中的任何代碼段的范圍內。換句話說,g()的范圍不包括f()的范圍。類似地,當使用方法中的代碼段實例化對象時,新實例化的對象內的代碼段的范圍不包括實例化了對象的方法的范圍。但是,方法中的塊的范圍典型地包括該方法中前面頂級代碼段的范圍。
典型地,變量的范圍取決于其中聲明該變量的代碼區域。在方法中聲明的變量可能在該方法內的后續代碼段的范圍內,但不在位于該方法外部的代碼段的范圍內,諸如相同類或另一個類中的不同方法中。在塊內聲明的變量可以在位于該塊內的后續代碼段的范圍內,但不在位于該塊外部的代碼段的范圍內。在一些面向對象的編程語言中,當在類中但在方法外部聲明變量時,可以將關鍵字用作訪問修飾符,以使變量可在類、子類、程序包或(一個或多個)應用級別可訪問。例如,Java編程語言的版本包括訪問修飾符public、protected和private。缺少訪問修飾符可能意味著默認訪問級別。例如,在類中但在方法的外部聲明的變量,如果沒有顯式的訪問修飾符,則只能由該類及其包含的程序包訪問。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于甲骨文國際公司,未經甲骨文國際公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201880033532.1/2.html,轉載請聲明來源鉆瓜專利網。





